Message ID | 0f6f432b-c650-4bb8-a1b5-fe3372804d52@gmail.com |
---|---|
State | New |
Headers | show |
Series | leds: Change devm_led_classdev_register_ext stub logic to use IS_REACHABLE | expand |
On Thu, 28 Dec 2023, Heiner Kallweit wrote: > If CONFIG_LEDS_CLASS = m and the caller of devm_led_classdev_register > is built-in, we get a compile/link error. > To avoid this we could add conditional compiling to the caller, but > exactly this overhead we wanted to avoid with adding the stubs. > Easiest solution is to use the existing stub also in case IS_ENABLED > is true, but IS_REACHABLE is false. > > Fixes: 18764b883e15 ("r8169: add support for LED's on RTL8168/RTL8101") > Reported-by: kernel test robot <lkp@intel.com> > Closes: https://lore.kernel.org/oe-kbuild-all/202312281159.9TPeXbNd-lkp@intel.com/ > Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com> > --- > include/linux/leds.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) Arnd pretty much NACKed this, right? https://lore.kernel.org/r/b310230b-f20b-489a-97ed-908df193a942@app.fastmail.com > diff --git a/include/linux/leds.h b/include/linux/leds.h > index 4754b02d3..1eecee316 100644 > --- a/include/linux/leds.h > +++ b/include/linux/leds.h > @@ -279,7 +279,7 @@ static inline int led_classdev_register(struct device *parent, > return led_classdev_register_ext(parent, led_cdev, NULL); > } > > -#if IS_ENABLED(CONFIG_LEDS_CLASS) > +#if IS_REACHABLE(CONFIG_LEDS_CLASS) > int devm_led_classdev_register_ext(struct device *parent, > struct led_classdev *led_cdev, > struct led_init_data *init_data); > -- > 2.43.0 >
diff --git a/include/linux/leds.h b/include/linux/leds.h index 4754b02d3..1eecee316 100644 --- a/include/linux/leds.h +++ b/include/linux/leds.h @@ -279,7 +279,7 @@ static inline int led_classdev_register(struct device *parent, return led_classdev_register_ext(parent, led_cdev, NULL); } -#if IS_ENABLED(CONFIG_LEDS_CLASS) +#if IS_REACHABLE(CONFIG_LEDS_CLASS) int devm_led_classdev_register_ext(struct device *parent, struct led_classdev *led_cdev, struct led_init_data *init_data);
If CONFIG_LEDS_CLASS = m and the caller of devm_led_classdev_register is built-in, we get a compile/link error. To avoid this we could add conditional compiling to the caller, but exactly this overhead we wanted to avoid with adding the stubs. Easiest solution is to use the existing stub also in case IS_ENABLED is true, but IS_REACHABLE is false. Fixes: 18764b883e15 ("r8169: add support for LED's on RTL8168/RTL8101") Reported-by: kernel test robot <lkp@intel.com> Closes: https://lore.kernel.org/oe-kbuild-all/202312281159.9TPeXbNd-lkp@intel.com/ Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com> --- include/linux/leds.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)