All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 4.9 v2 0/2] Clear LED_BLINK_SW flag in led_blink_set()
@ 2018-03-19 19:23 Jacek Anaszewski
  2018-03-19 19:23 ` [PATCH 4.9 v2 1/2] Revert "led: core: Fix brightness setting when setting delay_off=0" Jacek Anaszewski
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Jacek Anaszewski @ 2018-03-19 19:23 UTC (permalink / raw)
  To: stable, gregkh; +Cc: linux-kernel, linux-leds, pavel, jacek.anaszewski

The fix for brightness setting when setting delay_off=0 introduces
a regression and has truncated commit message. Revert that patch
and apply the one-line change required to fix the original issue
in the way appropriate for the 4.9 code base.

Changes from v1:
 - added Reported-by and Signed-off-by tags

Thanks,
Jacek Anaszewski

Jacek Anaszewski (2):
  Revert "led: core: Fix brightness setting when setting delay_off=0"
  led: core: Clear LED_BLINK_SW flag in led_blink_set()

 drivers/leds/led-core.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

-- 
2.1.4

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH 4.9 v2 1/2] Revert "led: core: Fix brightness setting when setting delay_off=0"
  2018-03-19 19:23 [PATCH 4.9 v2 0/2] Clear LED_BLINK_SW flag in led_blink_set() Jacek Anaszewski
@ 2018-03-19 19:23 ` Jacek Anaszewski
  2018-03-22 11:20   ` Patch "Revert "led: core: Fix brightness setting when setting delay_off=0"" has been added to the 4.9-stable tree gregkh
  2018-03-19 19:23 ` [PATCH 4.9 v2 2/2] led: core: Clear LED_BLINK_SW flag in led_blink_set() Jacek Anaszewski
  2018-03-22 10:58 ` [PATCH 4.9 v2 0/2] Clear LED_BLINK_SW flag in led_blink_set() Greg KH
  2 siblings, 1 reply; 6+ messages in thread
From: Jacek Anaszewski @ 2018-03-19 19:23 UTC (permalink / raw)
  To: stable, gregkh; +Cc: linux-kernel, linux-leds, pavel, jacek.anaszewski

This reverts commit 86b9fa2190907f4f550d9d6bf490c5f89ca33836.

The commit being reverted has two flaws:
 - it introduces a regression, fixed in the upstream
   commit 7b6af2c53192f1766892ef40c8f48a413509ed72.
 - it has truncated commit message

Reported-by: Sasha Levin <Alexander.Levin@microsoft.com>
Reported-by: Matthias Schiffer <mschiffer@universe-factory.net>
Signed-off-by: Jacek Anaszewski <jacek.anaszewski@gmail.com>
---
 drivers/leds/led-core.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/leds/led-core.c b/drivers/leds/led-core.c
index d70d4a5..3bce448 100644
--- a/drivers/leds/led-core.c
+++ b/drivers/leds/led-core.c
@@ -186,7 +186,7 @@ void led_blink_set(struct led_classdev *led_cdev,
 		   unsigned long *delay_on,
 		   unsigned long *delay_off)
 {
-	led_stop_software_blink(led_cdev);
+	del_timer_sync(&led_cdev->blink_timer);
 
 	led_cdev->flags &= ~LED_BLINK_ONESHOT;
 	led_cdev->flags &= ~LED_BLINK_ONESHOT_STOP;
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 4.9 v2 2/2] led: core: Clear LED_BLINK_SW flag in led_blink_set()
  2018-03-19 19:23 [PATCH 4.9 v2 0/2] Clear LED_BLINK_SW flag in led_blink_set() Jacek Anaszewski
  2018-03-19 19:23 ` [PATCH 4.9 v2 1/2] Revert "led: core: Fix brightness setting when setting delay_off=0" Jacek Anaszewski
@ 2018-03-19 19:23 ` Jacek Anaszewski
  2018-03-22 11:20   ` Patch "led: core: Clear LED_BLINK_SW flag in led_blink_set()" has been added to the 4.9-stable tree gregkh
  2018-03-22 10:58 ` [PATCH 4.9 v2 0/2] Clear LED_BLINK_SW flag in led_blink_set() Greg KH
  2 siblings, 1 reply; 6+ messages in thread
From: Jacek Anaszewski @ 2018-03-19 19:23 UTC (permalink / raw)
  To: stable, gregkh
  Cc: linux-kernel, linux-leds, pavel, jacek.anaszewski, Matthieu CASTET

With the current code, the following sequence won't work :
echo timer > trigger

echo 0 >  delay_off
* at this point we call
** led_delay_off_store
** led_blink_set
*** stop timer
** led_blink_setup
** led_set_software_blink
*** if !delay_on, led off
*** if !delay_off, set led_set_brightness_nosleep <--- LED_BLINK_SW
is set but timer is stop
*** otherwise start timer/set LED_BLINK_SW flag

echo xxx > brightness
* led_set_brightness
** if LED_BLINK_SW
*** if brightness=0, led off
*** else apply brightness if next timer <--- timer is stop, and will
never apply new setting
** otherwise set led_set_brightness_nosleep

To fix that, when we delete the timer, we should clear LED_BLINK_SW.

Signed-off-by: Matthieu CASTET <matthieu.castet@parrot.com>
Reported-by: Sasha Levin <Alexander.Levin@microsoft.com>
Reported-by: Matthias Schiffer <mschiffer@universe-factory.net>
Signed-off-by: Jacek Anaszewski <jacek.anaszewski@gmail.com>
---
 drivers/leds/led-core.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/leds/led-core.c b/drivers/leds/led-core.c
index 3bce448..454ed4d 100644
--- a/drivers/leds/led-core.c
+++ b/drivers/leds/led-core.c
@@ -188,6 +188,7 @@ void led_blink_set(struct led_classdev *led_cdev,
 {
 	del_timer_sync(&led_cdev->blink_timer);
 
+	led_cdev->flags &= ~LED_BLINK_SW;
 	led_cdev->flags &= ~LED_BLINK_ONESHOT;
 	led_cdev->flags &= ~LED_BLINK_ONESHOT_STOP;
 
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH 4.9 v2 0/2] Clear LED_BLINK_SW flag in led_blink_set()
  2018-03-19 19:23 [PATCH 4.9 v2 0/2] Clear LED_BLINK_SW flag in led_blink_set() Jacek Anaszewski
  2018-03-19 19:23 ` [PATCH 4.9 v2 1/2] Revert "led: core: Fix brightness setting when setting delay_off=0" Jacek Anaszewski
  2018-03-19 19:23 ` [PATCH 4.9 v2 2/2] led: core: Clear LED_BLINK_SW flag in led_blink_set() Jacek Anaszewski
@ 2018-03-22 10:58 ` Greg KH
  2 siblings, 0 replies; 6+ messages in thread
From: Greg KH @ 2018-03-22 10:58 UTC (permalink / raw)
  To: Jacek Anaszewski; +Cc: stable, linux-kernel, linux-leds, pavel

On Mon, Mar 19, 2018 at 08:23:17PM +0100, Jacek Anaszewski wrote:
> The fix for brightness setting when setting delay_off=0 introduces
> a regression and has truncated commit message. Revert that patch
> and apply the one-line change required to fix the original issue
> in the way appropriate for the 4.9 code base.

Thanks, now queued up.

greg k-h

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Patch "led: core: Clear LED_BLINK_SW flag in led_blink_set()" has been added to the 4.9-stable tree
  2018-03-19 19:23 ` [PATCH 4.9 v2 2/2] led: core: Clear LED_BLINK_SW flag in led_blink_set() Jacek Anaszewski
@ 2018-03-22 11:20   ` gregkh
  0 siblings, 0 replies; 6+ messages in thread
From: gregkh @ 2018-03-22 11:20 UTC (permalink / raw)
  To: jacek.anaszewski, matthieu.castet; +Cc: stable, stable-commits


This is a note to let you know that I've just added the patch titled

    led: core: Clear LED_BLINK_SW flag in led_blink_set()

to the 4.9-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     led-core-clear-led_blink_sw-flag-in-led_blink_set.patch
and it can be found in the queue-4.9 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@vger.kernel.org> know about it.


>From jacek.anaszewski@gmail.com  Thu Mar 22 11:57:33 2018
From: Jacek Anaszewski <jacek.anaszewski@gmail.com>
Date: Mon, 19 Mar 2018 20:23:19 +0100
Subject: led: core: Clear LED_BLINK_SW flag in led_blink_set()
To: stable@vger.kernel.org, gregkh@linuxfoundation.org
Cc: linux-kernel@vger.kernel.org, linux-leds@vger.kernel.org, pavel@ucw.cz, jacek.anaszewski@gmail.com, Matthieu CASTET <matthieu.castet@parrot.com>
Message-ID: <1521487399-10447-3-git-send-email-jacek.anaszewski@gmail.com>

From: Jacek Anaszewski <jacek.anaszewski@gmail.com>

[Only needed in 4.9.y due to other fixes in mainline - gregkh]

With the current code, the following sequence won't work :
echo timer > trigger

echo 0 >  delay_off
* at this point we call
** led_delay_off_store
** led_blink_set
---
 drivers/leds/led-core.c |    1 +
 1 file changed, 1 insertion(+)

--- a/drivers/leds/led-core.c
+++ b/drivers/leds/led-core.c
@@ -188,6 +188,7 @@ void led_blink_set(struct led_classdev *
 {
 	del_timer_sync(&led_cdev->blink_timer);
 
+	led_cdev->flags &= ~LED_BLINK_SW;
 	led_cdev->flags &= ~LED_BLINK_ONESHOT;
 	led_cdev->flags &= ~LED_BLINK_ONESHOT_STOP;
 


Patches currently in stable-queue which might be from jacek.anaszewski@gmail.com are

queue-4.9/revert-led-core-fix-brightness-setting-when-setting-delay_off-0.patch
queue-4.9/led-core-clear-led_blink_sw-flag-in-led_blink_set.patch

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Patch "Revert "led: core: Fix brightness setting when setting delay_off=0"" has been added to the 4.9-stable tree
  2018-03-19 19:23 ` [PATCH 4.9 v2 1/2] Revert "led: core: Fix brightness setting when setting delay_off=0" Jacek Anaszewski
@ 2018-03-22 11:20   ` gregkh
  0 siblings, 0 replies; 6+ messages in thread
From: gregkh @ 2018-03-22 11:20 UTC (permalink / raw)
  To: jacek.anaszewski, Alexander.Levin, gregkh, mschiffer
  Cc: stable, stable-commits


This is a note to let you know that I've just added the patch titled

    Revert "led: core: Fix brightness setting when setting delay_off=0"

to the 4.9-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     revert-led-core-fix-brightness-setting-when-setting-delay_off-0.patch
and it can be found in the queue-4.9 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@vger.kernel.org> know about it.


>From jacek.anaszewski@gmail.com  Thu Mar 22 11:56:58 2018
From: Jacek Anaszewski <jacek.anaszewski@gmail.com>
Date: Mon, 19 Mar 2018 20:23:18 +0100
Subject: Revert "led: core: Fix brightness setting when setting delay_off=0"
To: stable@vger.kernel.org, gregkh@linuxfoundation.org
Cc: linux-kernel@vger.kernel.org, linux-leds@vger.kernel.org, pavel@ucw.cz, jacek.anaszewski@gmail.com
Message-ID: <1521487399-10447-2-git-send-email-jacek.anaszewski@gmail.com>

From: Jacek Anaszewski <jacek.anaszewski@gmail.com>

This reverts commit 86b9fa2190907f4f550d9d6bf490c5f89ca33836 which was
commit 2b83ff96f51d0b039c4561b9f95c824d7bddb85c upstream.

The commit being reverted has two flaws:
 - it introduces a regression, fixed in the upstream
   commit 7b6af2c53192f1766892ef40c8f48a413509ed72.
 - it has truncated commit message

Reported-by: Sasha Levin <Alexander.Levin@microsoft.com>
Reported-by: Matthias Schiffer <mschiffer@universe-factory.net>
Signed-off-by: Jacek Anaszewski <jacek.anaszewski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 drivers/leds/led-core.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/drivers/leds/led-core.c
+++ b/drivers/leds/led-core.c
@@ -186,7 +186,7 @@ void led_blink_set(struct led_classdev *
 		   unsigned long *delay_on,
 		   unsigned long *delay_off)
 {
-	led_stop_software_blink(led_cdev);
+	del_timer_sync(&led_cdev->blink_timer);
 
 	led_cdev->flags &= ~LED_BLINK_ONESHOT;
 	led_cdev->flags &= ~LED_BLINK_ONESHOT_STOP;


Patches currently in stable-queue which might be from jacek.anaszewski@gmail.com are

queue-4.9/revert-led-core-fix-brightness-setting-when-setting-delay_off-0.patch
queue-4.9/led-core-clear-led_blink_sw-flag-in-led_blink_set.patch

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2018-03-22 11:20 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-03-19 19:23 [PATCH 4.9 v2 0/2] Clear LED_BLINK_SW flag in led_blink_set() Jacek Anaszewski
2018-03-19 19:23 ` [PATCH 4.9 v2 1/2] Revert "led: core: Fix brightness setting when setting delay_off=0" Jacek Anaszewski
2018-03-22 11:20   ` Patch "Revert "led: core: Fix brightness setting when setting delay_off=0"" has been added to the 4.9-stable tree gregkh
2018-03-19 19:23 ` [PATCH 4.9 v2 2/2] led: core: Clear LED_BLINK_SW flag in led_blink_set() Jacek Anaszewski
2018-03-22 11:20   ` Patch "led: core: Clear LED_BLINK_SW flag in led_blink_set()" has been added to the 4.9-stable tree gregkh
2018-03-22 10:58 ` [PATCH 4.9 v2 0/2] Clear LED_BLINK_SW flag in led_blink_set() Greg KH

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.