Hi Luca, On Mon, 2025-05-12 at 13:39 +0200, Alexander Sverdlin wrote: > > led-backlight is a consumer of one or multiple LED class devices, but no > > devlink is created for such supplier-producer relationship. One consequence > > is that removal ordered is not correctly enforced. > > > > Issues happen for example with the following sections in a device tree > > overlay: > > > > // An LED driver chip > > pca9632@62 { > > compatible = "nxp,pca9632"; > > reg = <0x62>; > > > > // ... > > > > addon_led_pwm: led-pwm@3 { > > reg = <3>; > > label = "addon:led:pwm"; > > }; > > }; > > > > backlight-addon { > > compatible = "led-backlight"; > > leds = <&addon_led_pwm>; > > brightness-levels = <255>; > > default-brightness-level = <255>; > > }; > > > > On removal of the above overlay, the LED driver can be removed before the > > backlight device, resulting in: > > > > Unable to handle kernel NULL pointer dereference at virtual address > > 0000000000000010 > > ... > > Call trace: > > led_put+0xe0/0x140 > > devm_led_release+0x6c/0x98 > > > > Fix by adding a devlink between the consuming led-backlight device and the > > supplying LED device. > > > > Signed-off-by: Luca Ceresoli <luca.ceres...@bootlin.com> > > I've tested the patch wit LP8864 LED as a provider for led_bl, removing the > underlying I2C bus. The patch avoids the crash for me (by removing led_bl > device as well), > thanks for fixing it! > > Tested-by: Alexander Sverdlin <alexander.sverd...@siemens.com>
Would it make sense to add Fixes: ae232e45acf9 ("backlight: add led-backlight driver") ? -- Alexander Sverdlin Siemens AG www.siemens.com