linux/drivers/leds/trigger
Christian Marangi d1b9e1391a leds: trigger: netdev: Use mutex instead of spinlocks
Some LEDs may require to sleep while doing some operation like setting
brightness and other cleanup.

For this reason, using a spinlock will cause a sleep under spinlock
warning.

It should be safe to convert this to a sleepable lock since:
- sysfs read/write can sleep
- netdev_trig_work is a work queue and can sleep
- netdev _trig_notify can sleep

The spinlock was used when brightness didn't support sleeping, but this
changed and now it supported with brightness_set_blocking().

Convert to mutex lock to permit sleeping using brightness_set_blocking().

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Lee Jones <lee@kernel.org>
Link: https://lore.kernel.org/r/20230419210743.3594-6-ansuelsmth@gmail.com
2023-05-25 12:07:38 +01:00
..
Kconfig leds: Mark GPIO LED trigger broken 2023-03-16 15:08:44 +00:00
ledtrig-activity.c treewide: Convert del_timer*() to timer_shutdown*() 2022-12-25 13:38:09 -08:00
ledtrig-audio.c leds: trigger: audio: Add an activate callback to ensure the initial brightness is set 2021-08-03 23:57:17 +02:00
ledtrig-backlight.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
ledtrig-camera.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
ledtrig-cpu.c leds: trigger: ledtrig-cpu: Fix incorrectly documented param 'ledevt' 2021-05-28 11:38:53 +02:00
ledtrig-default-on.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
ledtrig-disk.c leds: Remove ide-disk trigger 2023-02-04 15:18:17 +00:00
ledtrig-gpio.c leds: trigger: gpio: Avoid warning on update of inverted 2020-07-12 10:06:38 +02:00
ledtrig-heartbeat.c treewide: Convert del_timer*() to timer_shutdown*() 2022-12-25 13:38:09 -08:00
ledtrig-mtd.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
ledtrig-netdev.c leds: trigger: netdev: Use mutex instead of spinlocks 2023-05-25 12:07:38 +01:00
ledtrig-oneshot.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
ledtrig-panic.c kernel.h: split out panic and oops helpers 2021-07-01 11:06:04 -07:00
ledtrig-pattern.c treewide: Convert del_timer*() to timer_shutdown*() 2022-12-25 13:38:09 -08:00
ledtrig-timer.c leds: trigger: remove redundant assignment to variable ret 2020-04-27 14:13:12 +02:00
ledtrig-transient.c treewide: Convert del_timer*() to timer_shutdown*() 2022-12-25 13:38:09 -08:00
ledtrig-tty.c leds: trigger/tty: Use led_set_brightness_sync() from workqueue 2021-03-10 09:27:56 +01:00
Makefile leds: trigger: implement a tty trigger 2021-01-15 10:22:26 +01:00