Pavel Machek
0db37915d9
leds: avoid races with workqueue
...
There are races between "main" thread and workqueue. They manifest
themselves on Thinkpad X60:
This should result in LED blinking, but it turns it off instead:
root@amd:/data/pavel# cd /sys/class/leds/tpacpi\:\:power
root@amd:/sys/class/leds/tpacpi::power# echo timer > trigger
root@amd:/sys/class/leds/tpacpi::power# echo timer > trigger
It should be possible to transition from blinking to solid on by echo
0 > brightness; echo 1 > brightness... but that does not work, either,
if done too quickly.
Synchronization of the workqueue fixes both.
Fixes: 1afcadfcd1
("leds: core: Use set_brightness_work for the blocking op")
Signed-off-by: Pavel Machek <pavel@ucw.cz >
Signed-off-by: Jacek Anaszewski <jacek.anaszewski@gmail.com >
2019-05-02 22:54:51 +02:00
..
2019-01-16 22:09:25 +01:00
2019-04-07 20:55:14 +02:00
2016-01-04 09:57:37 +01:00
2019-05-02 22:54:51 +02:00
2019-05-02 22:54:51 +02:00
2018-12-10 21:31:55 +01:00
2018-12-06 21:30:08 +01:00
2017-09-07 14:33:13 -07:00
2018-06-12 16:19:22 -07:00
2018-09-10 21:31:11 +02:00
2018-06-28 21:34:43 +02:00
2019-03-18 19:21:51 +01:00
2014-10-20 16:20:43 +02:00
2017-06-13 20:36:56 +02:00
2016-01-04 09:57:40 +01:00
2016-01-04 09:57:32 +01:00
2019-04-02 21:03:25 +02:00
2017-09-14 11:59:30 +02:00
2015-11-03 08:59:09 +01:00
2016-11-23 16:38:01 +01:00
2017-03-29 21:02:27 +02:00
2018-06-12 16:19:22 -07:00
2016-03-14 09:22:22 +01:00
2018-06-12 16:19:22 -07:00
2016-01-04 09:57:34 +01:00
2015-08-28 14:06:23 +02:00
2014-09-29 10:21:01 -07:00
2018-12-08 18:17:14 +01:00
2016-06-20 09:57:56 +02:00
2016-01-04 09:57:38 +01:00
2017-08-12 23:50:07 +02:00
2016-08-15 14:02:31 +02:00
2017-01-26 21:16:38 +01:00
2016-01-04 09:57:36 +01:00
2015-08-28 14:06:02 +02:00
2019-04-07 20:45:49 +02:00
2017-08-29 21:10:37 +02:00
2018-05-23 21:44:47 +02:00
2016-01-04 09:57:32 +01:00
2018-07-03 22:27:12 +02:00
2015-11-03 08:59:50 +01:00
2019-02-14 22:03:44 +01:00
2016-01-04 09:57:33 +01:00
2016-03-14 09:22:20 +01:00
2017-03-23 20:33:59 +01:00
2018-06-12 16:19:22 -07:00
2019-01-17 22:27:39 +01:00
2018-06-12 16:19:22 -07:00
2018-06-12 16:19:22 -07:00
2016-03-14 09:22:22 +01:00
2018-01-08 21:28:12 +01:00
2019-03-31 20:12:30 +02:00
2018-07-03 22:12:41 +02:00
2017-08-26 20:26:35 -04:00
2018-06-12 16:19:22 -07:00
2015-11-03 08:59:52 +01:00
2018-06-12 16:19:22 -07:00
2019-02-23 09:20:46 -08:00
2017-03-23 20:23:57 +01:00
2015-11-03 08:59:54 +01:00
2018-06-12 16:19:22 -07:00
2016-11-22 12:07:04 +01:00
2018-08-06 23:03:12 +02:00
2015-11-03 08:59:13 +01:00
2019-03-31 20:12:30 +02:00
2019-03-31 20:12:31 +02:00
2017-04-19 20:27:50 +02:00
2017-12-01 08:57:42 +00:00
2018-11-21 20:23:14 +01:00
2018-12-08 18:59:47 +01:00
2014-10-20 16:20:43 +02:00
2016-01-04 09:57:35 +01:00
2016-03-14 09:22:22 +01:00
2018-10-11 21:59:11 +02:00
2017-09-14 11:59:30 +02:00
2016-01-04 09:57:38 +01:00
2016-01-04 09:57:39 +01:00
2018-06-12 16:19:22 -07:00
2017-07-16 18:45:43 +02:00
2018-05-03 21:50:13 +02:00
2016-01-04 09:57:35 +01:00
2015-11-03 08:59:58 +01:00
2016-05-06 10:22:09 +02:00
2019-04-07 20:45:49 +02:00
2018-02-11 14:34:03 -08:00