a33677b921
The led_access lock must be held when calling led_sysfs_enable() and led_sysfs_disable(). This fixes warnings such as this: [ 2.432495] ------------[ cut here ]------------ [ 2.437316] WARNING: CPU: 0 PID: 22 at drivers/leds/led-core.c:349 led_sysfs_disable+0x54/0x58 [ 2.446105] Modules linked in: [ 2.449218] CPU: 0 PID: 22 Comm: kworker/u2:1 Not tainted 6.3.8+ #1 [ 2.456268] Hardware name: Generic AM3517 (Flattened Device Tree) [ 2.462402] Workqueue: events_unbound deferred_probe_work_func [ 2.468353] unwind_backtrace from show_stack+0x10/0x14 [ 2.473632] show_stack from dump_stack_lvl+0x24/0x2c [ 2.478759] dump_stack_lvl from __warn+0x9c/0xc4 [ 2.483551] __warn from warn_slowpath_fmt+0x64/0xc0 [ 2.488586] warn_slowpath_fmt from led_sysfs_disable+0x54/0x58 [ 2.494567] led_sysfs_disable from led_bl_probe+0x20c/0x3b0 [ 2.500305] led_bl_probe from platform_probe+0x5c/0xb8 [ 2.505615] platform_probe from really_probe+0xc8/0x2a0 [ 2.510986] really_probe from __driver_probe_device+0x88/0x19c [ 2.516967] __driver_probe_device from driver_probe_device+0x30/0xcc [ 2.523498] driver_probe_device from __device_attach_driver+0x94/0xc4 [ 2.530090] __device_attach_driver from bus_for_each_drv+0x80/0xcc [ 2.536437] bus_for_each_drv from __device_attach+0xf8/0x19c [ 2.542236] __device_attach from bus_probe_device+0x8c/0x90 [ 2.547973] bus_probe_device from deferred_probe_work_func+0x80/0xb0 [ 2.554504] deferred_probe_work_func from process_one_work+0x228/0x4c0 [ 2.561187] process_one_work from worker_thread+0x1fc/0x4d0 [ 2.566925] worker_thread from kthread+0xb4/0xd0 [ 2.571685] kthread from ret_from_fork+0x14/0x2c [ 2.576446] Exception stack(0xd0079fb0 to 0xd0079ff8) [ 2.581573] 9fa0: 00000000 00000000 00000000 00000000 [ 2.589813] 9fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 [ 2.598052] 9fe0: 00000000 00000000 00000000 00000000 00000013 00000000 [ 2.604888] ---[ end trace 0000000000000000 ]--- Signed-off-by: Mans Rullgard <mans@mansr.com> Reviewed-by: Daniel Thompson <daniel.thompson@linaro.org> Link: https://lore.kernel.org/r/20230619160249.10414-1-mans@mansr.com Signed-off-by: Lee Jones <lee@kernel.org> |
||
---|---|---|
.. | ||
88pm860x_bl.c | ||
aat2870_bl.c | ||
adp5520_bl.c | ||
adp8860_bl.c | ||
adp8870_bl.c | ||
ams369fg06.c | ||
apple_bl.c | ||
arcxcnn_bl.c | ||
as3711_bl.c | ||
backlight.c | ||
bd6107.c | ||
corgi_lcd.c | ||
cr_bllcd.c | ||
da903x_bl.c | ||
da9052_bl.c | ||
ep93xx_bl.c | ||
gpio_backlight.c | ||
hp680_bl.c | ||
hx8357.c | ||
ili922x.c | ||
ili9320.c | ||
ili9320.h | ||
ipaq_micro_bl.c | ||
jornada720_bl.c | ||
jornada720_lcd.c | ||
kb3886_bl.c | ||
Kconfig | ||
ktd253-backlight.c | ||
ktz8866.c | ||
l4f00242t03.c | ||
lcd.c | ||
led_bl.c | ||
lm3533_bl.c | ||
lm3630a_bl.c | ||
lm3639_bl.c | ||
lms283gf05.c | ||
lms501kf03.c | ||
locomolcd.c | ||
lp855x_bl.c | ||
lp8788_bl.c | ||
ltv350qv.c | ||
ltv350qv.h | ||
lv5207lp.c | ||
Makefile | ||
max8925_bl.c | ||
mt6370-backlight.c | ||
omap1_bl.c | ||
otm3225a.c | ||
pandora_bl.c | ||
pcf50633-backlight.c | ||
platform_lcd.c | ||
pwm_bl.c | ||
qcom-wled.c | ||
rave-sp-backlight.c | ||
rt4831-backlight.c | ||
sky81452-backlight.c | ||
tdo24m.c | ||
tps65217_bl.c | ||
vgg2432a4.c | ||
wm831x_bl.c |