OpenCloudOS-Kernel/drivers/leds/trigger
Thomas Weißschuh 93ac74cd6f leds: triggers: Flush pending brightness before activating trigger
[ Upstream commit ab477b766edd3bfb6321a6e3df4c790612613fae ]

The race fixed in timer_trig_activate() between a blocking
set_brightness() call and trigger->activate() can affect any trigger.
So move the call to flush_work() into led_trigger_set() where it can
avoid the race for all triggers.

Fixes: 0db37915d9 ("leds: avoid races with workqueue")
Fixes: 8c0f693c6e ("leds: avoid flush_work in atomic context")
Cc: stable@vger.kernel.org
Tested-by: Dustin L. Howett <dustin@howett.net>
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
Link: https://lore.kernel.org/r/20240613-led-trigger-flush-v2-1-f4f970799d77@weissschuh.net
Signed-off-by: Lee Jones <lee@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-08-11 12:47:14 +02:00
..
Kconfig
Makefile
ledtrig-activity.c
ledtrig-audio.c
ledtrig-backlight.c
ledtrig-camera.c
ledtrig-cpu.c
ledtrig-default-on.c
ledtrig-disk.c
ledtrig-gpio.c
ledtrig-heartbeat.c
ledtrig-mtd.c
ledtrig-netdev.c leds: trigger: netdev: Fix kernel panic on interface rename trig notify 2024-04-03 15:28:27 +02:00
ledtrig-oneshot.c
ledtrig-panic.c leds: trigger: panic: Don't register panic notifier if creating the trigger failed 2024-02-05 20:14:30 +00:00
ledtrig-pattern.c
ledtrig-timer.c leds: triggers: Flush pending brightness before activating trigger 2024-08-11 12:47:14 +02:00
ledtrig-transient.c
ledtrig-tty.c leds: ledtrig-tty: Free allocated ttyname buffer on deactivate 2024-01-20 11:51:48 +01:00