Messages in this thread | | | Date | Sun, 1 Oct 2023 22:43:51 +0800 | From | kernel test robot <> | Subject | Re: [PATCH 1/2] pwm: make it possible to apply pwm changes in atomic context |
| |
Hi Sean,
kernel test robot noticed the following build errors:
[auto build test ERROR on thierry-reding-pwm/for-next] [also build test ERROR on shawnguo/for-next atorgue-stm32/stm32-next media-tree/master linus/master v6.6-rc3 next-20230929] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Sean-Young/media-pwm-ir-tx-trigger-edges-from-hrtimer-interrupt-context/20231001-194056 base: https://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm.git for-next patch link: https://lore.kernel.org/r/1bd5241d584ceb4d6b731c4dc3203fb9686ee1d1.1696156485.git.sean%40mess.org patch subject: [PATCH 1/2] pwm: make it possible to apply pwm changes in atomic context config: arm-randconfig-002-20231001 (https://download.01.org/0day-ci/archive/20231001/202310012229.ldJwkjOY-lkp@intel.com/config) compiler: arm-linux-gnueabi-gcc (GCC) 13.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231001/202310012229.ldJwkjOY-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <lkp@intel.com> | Closes: https://lore.kernel.org/oe-kbuild-all/202310012229.ldJwkjOY-lkp@intel.com/
All errors (new ones prefixed by >>):
In file included from include/linux/cpumask.h:10, from include/linux/smp.h:13, from include/linux/lockdep.h:14, from include/linux/spinlock.h:63, from include/linux/mmzone.h:8, from include/linux/gfp.h:7, from include/linux/slab.h:16, from include/linux/resource_ext.h:11, from include/linux/acpi.h:13, from include/linux/i2c.h:13, from drivers/input/misc/da7280.c:12: include/linux/pwm.h: In function 'pwm_apply_state': >> include/linux/pwm.h:428:24: error: implicit declaration of function 'pwm_can_sleep'; did you mean 'cant_sleep'? [-Werror=implicit-function-declaration] 428 | might_sleep_if(pwm_can_sleep(pwm)); | ^~~~~~~~~~~~~ include/linux/kernel.h:194:39: note: in definition of macro 'might_sleep_if' 194 | #define might_sleep_if(cond) do { if (cond) might_sleep(); } while (0) | ^~~~ In file included from drivers/input/misc/da7280.c:16: include/linux/pwm.h: At top level: >> include/linux/pwm.h:455:20: error: conflicting types for 'pwm_can_sleep'; have 'bool(struct pwm_device *)' {aka '_Bool(struct pwm_device *)'} 455 | static inline bool pwm_can_sleep(struct pwm_device *pwm) | ^~~~~~~~~~~~~ include/linux/pwm.h:428:24: note: previous implicit declaration of 'pwm_can_sleep' with type 'int()' 428 | might_sleep_if(pwm_can_sleep(pwm)); | ^~~~~~~~~~~~~ include/linux/kernel.h:194:39: note: in definition of macro 'might_sleep_if' 194 | #define might_sleep_if(cond) do { if (cond) might_sleep(); } while (0) | ^~~~ cc1: some warnings being treated as errors
vim +428 include/linux/pwm.h
419 420 struct pwm_device *devm_pwm_get(struct device *dev, const char *con_id); 421 struct pwm_device *devm_fwnode_pwm_get(struct device *dev, 422 struct fwnode_handle *fwnode, 423 const char *con_id); 424 #else 425 static inline int pwm_apply_state(struct pwm_device *pwm, 426 const struct pwm_state *state) 427 { > 428 might_sleep_if(pwm_can_sleep(pwm)); 429 return -ENOTSUPP; 430 } 431 432 static inline int pwm_adjust_config(struct pwm_device *pwm) 433 { 434 return -ENOTSUPP; 435 } 436 437 static inline int pwm_config(struct pwm_device *pwm, int duty_ns, 438 int period_ns) 439 { 440 might_sleep_if(pwm_can_sleep(pwm)); 441 return -EINVAL; 442 } 443 444 static inline int pwm_enable(struct pwm_device *pwm) 445 { 446 might_sleep_if(pwm_can_sleep(pwm)); 447 return -EINVAL; 448 } 449 450 static inline void pwm_disable(struct pwm_device *pwm) 451 { 452 might_sleep_if(pwm_can_sleep(pwm)); 453 } 454 > 455 static inline bool pwm_can_sleep(struct pwm_device *pwm) 456 { 457 return true; 458 } 459
-- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
| |