Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1483122 > unrolled thread

[PATCH] leds: Only remove trigger if one is actually configured.

Started byDaniel Romell <danielromell@gmail.com>
First post2016-09-14 11:30 +0200
Last post2016-09-20 21:30 +0200
Articles 4 — 3 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] leds: Only remove trigger if one is actually configured. Daniel Romell <danielromell@gmail.com> - 2016-09-14 11:30 +0200
    Re: [PATCH] leds: Only remove trigger if one is actually configured. Jacek Anaszewski <j.anaszewski@samsung.com> - 2016-09-15 13:50 +0200
      Re: [PATCH] leds: Only remove trigger if one is actually configured. Jacek Anaszewski <j.anaszewski@samsung.com> - 2016-09-20 09:40 +0200
        Re: [PATCH] leds: Only remove trigger if one is actually configured. Daniel Romell <Daro@hms.se> - 2016-09-20 21:30 +0200

#1483122 — [PATCH] leds: Only remove trigger if one is actually configured.

FromDaniel Romell <danielromell@gmail.com>
Date2016-09-14 11:30 +0200
Subject[PATCH] leds: Only remove trigger if one is actually configured.
Message-ID<sheFX-7x3-3@gated-at.bofh.it>
In led_trigger_remove(), check if there is a trigger
configured before calling led_trigger_set(). This will
prevent some unnecessary work, and more importantly stop
sending uevent change events when no change has in fact
occurred.

Signed-off-by: Daniel Romell <daro@hms.se>
---
 drivers/leds/led-triggers.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/leds/led-triggers.c b/drivers/leds/led-triggers.c
index 59d6a3e..28c7a66 100644
--- a/drivers/leds/led-triggers.c
+++ b/drivers/leds/led-triggers.c
@@ -147,7 +147,8 @@ EXPORT_SYMBOL_GPL(led_trigger_set);
 void led_trigger_remove(struct led_classdev *led_cdev)
 {
 	down_write(&led_cdev->trigger_lock);
-	led_trigger_set(led_cdev, NULL);
+	if (led_cdev->trigger)
+		led_trigger_set(led_cdev, NULL);
 	up_write(&led_cdev->trigger_lock);
 }
 EXPORT_SYMBOL_GPL(led_trigger_remove);
-- 
2.7.4

[toc] | [next] | [standalone]


#1484024

FromJacek Anaszewski <j.anaszewski@samsung.com>
Date2016-09-15 13:50 +0200
Message-ID<shDl0-6rX-21@gated-at.bofh.it>
In reply to#1483122
Hi Daniel,

On 09/14/2016 11:23 AM, Daniel Romell wrote:
> In led_trigger_remove(), check if there is a trigger
> configured before calling led_trigger_set(). This will
> prevent some unnecessary work, and more importantly stop
> sending uevent change events when no change has in fact
> occurred.
>
> Signed-off-by: Daniel Romell <daro@hms.se>
> ---
>  drivers/leds/led-triggers.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/leds/led-triggers.c b/drivers/leds/led-triggers.c
> index 59d6a3e..28c7a66 100644
> --- a/drivers/leds/led-triggers.c
> +++ b/drivers/leds/led-triggers.c
> @@ -147,7 +147,8 @@ EXPORT_SYMBOL_GPL(led_trigger_set);
>  void led_trigger_remove(struct led_classdev *led_cdev)
>  {
>  	down_write(&led_cdev->trigger_lock);
> -	led_trigger_set(led_cdev, NULL);
> +	if (led_cdev->trigger)
> +		led_trigger_set(led_cdev, NULL);
>  	up_write(&led_cdev->trigger_lock);
>  }
>  EXPORT_SYMBOL_GPL(led_trigger_remove);
>

Thanks for the patch. Applied.

-- 
Best regards,
Jacek Anaszewski

[toc] | [prev] | [next] | [standalone]


#1487120

FromJacek Anaszewski <j.anaszewski@samsung.com>
Date2016-09-20 09:40 +0200
Message-ID<sjnOO-8o2-25@gated-at.bofh.it>
In reply to#1484024
Hi Daniel,

I dropped that patch because we need to fix the problem
at the origin, i.e. inside led_trigger_set(). I submitted
the patch [0] doing that, and credited you by adding
Reported-by tag to the commit message.

Thanks,
Jacek Anaszewski

On 09/15/2016 01:48 PM, Jacek Anaszewski wrote:
> Hi Daniel,
>
> On 09/14/2016 11:23 AM, Daniel Romell wrote:
>> In led_trigger_remove(), check if there is a trigger
>> configured before calling led_trigger_set(). This will
>> prevent some unnecessary work, and more importantly stop
>> sending uevent change events when no change has in fact
>> occurred.
>>
>> Signed-off-by: Daniel Romell <daro@hms.se>
>> ---
>>  drivers/leds/led-triggers.c | 3 ++-
>>  1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/leds/led-triggers.c b/drivers/leds/led-triggers.c
>> index 59d6a3e..28c7a66 100644
>> --- a/drivers/leds/led-triggers.c
>> +++ b/drivers/leds/led-triggers.c
>> @@ -147,7 +147,8 @@ EXPORT_SYMBOL_GPL(led_trigger_set);
>>  void led_trigger_remove(struct led_classdev *led_cdev)
>>  {
>>      down_write(&led_cdev->trigger_lock);
>> -    led_trigger_set(led_cdev, NULL);
>> +    if (led_cdev->trigger)
>> +        led_trigger_set(led_cdev, NULL);
>>      up_write(&led_cdev->trigger_lock);
>>  }
>>  EXPORT_SYMBOL_GPL(led_trigger_remove);
>>
>
> Thanks for the patch. Applied.
>

[0] 
https://git.kernel.org/cgit/linux/kernel/git/j.anaszewski/linux-leds.git/commit/?h=for-next&id=19afa7b4c4c9deebd312d293df2e2703de29e26a

[toc] | [prev] | [next] | [standalone]


#1487567

FromDaniel Romell <Daro@hms.se>
Date2016-09-20 21:30 +0200
Message-ID<sjyTU-7bb-9@gated-at.bofh.it>
In reply to#1487120
Hi,

Yeah, I agree that was a better solution. I'll respond with an ACK on that patch as well.

/ Daniel Romell

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web