Pull LED fix from Jacek Anaszewski: "Fix for a recent change in LED core, that didn't take into account the possibility of calling led_blink_setup() from atomic context" * tag 'led-fixes-for-5.2-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds: leds: avoid flush_work in atomic context
Unified · Split
| @@ -164,11 +164,6 @@ static void led_blink_setup(struct led_classdev *led_cdev, · 163 unmodified lines | ||
| 164 | 164 | unsigned long *delay_on, |
| 165 | 165 | unsigned long *delay_off) |
| 166 | 166 | { |
| 167 | − /* | |
| 168 | − * If "set brightness to 0" is pending in workqueue, we don't | |
| 169 | − * want that to be reordered after blink_set() | |
| 170 | − */ | |
| 171 | − flush_work(&led_cdev->set_brightness_work); | |
| 172 | 167 | if (!test_bit(LED_BLINK_ONESHOT, &led_cdev->work_flags) && |
| 173 | 168 | led_cdev->blink_set && |
| 174 | 169 | !led_cdev->blink_set(led_cdev, delay_on, delay_off)) |
| @@ -113,6 +113,11 @@ static int timer_trig_activate(struct led_classdev *led_cdev) · 112 unmodified lines | ||
| 113 | 113 | led_cdev->flags &= ~LED_INIT_DEFAULT_TRIGGER; |
| 114 | 114 | } |
| 115 | 115 | |
| 116 | + /* | |
| 117 | + * If "set brightness to 0" is pending in workqueue, we don't | |
| 118 | + * want that to be reordered after blink_set() | |
| 119 | + */ | |
| 120 | + flush_work(&led_cdev->set_brightness_work); | |
| 116 | 121 | led_blink_set(led_cdev, &led_cdev->blink_delay_on, |
| 117 | 122 | &led_cdev->blink_delay_off); |
| 118 | 123 | |