Re: [PATCH 1/4] leds: Change led_trigger_blink[_oneshot]() delay parameters to pass-by-value

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On 5/10/23 13:57, Lee Jones wrote:
> On Wed, 12 Apr 2023, Hans de Goede wrote:
> 
>> led_blink_set[_oneshot]()'s delay_on and delay_off function parameters
>> are pass by reference, so that hw-blink implementations can report
>> back the actual achieved delays when the values have been rounded
>> to something the hw supports.
>>
>> This is really only interesting for the sysfs API / the timer trigger.
>> Other triggers don't really care about this and none of the callers of
>> led_trigger_blink[_oneshot]() do anything with the returned delay values.
>>
>> Change the led_trigger_blink[_oneshot]() delay parameters to pass-by-value,
>> there are 2 reasons for this:
>>
>> 1. led_cdev->blink_set() may sleep, while led_trigger_blink() may not.
>> So on hw where led_cdev->blink_set() sleeps the call needs to be deferred
>> to a workqueue, in which case the actual achieved delays are unknown
>> (this is a preparation patch for the deferring).
>>
>> 2. Since the callers don't care about the actual achieved delays, allowing
>> callers to directly pass a value leads to simpler code for most callers.
>>
>> Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx>
>> ---
>>  drivers/leds/led-triggers.c              | 16 ++++++++--------
>>  drivers/leds/trigger/ledtrig-disk.c      |  9 +++------
>>  drivers/leds/trigger/ledtrig-mtd.c       |  8 ++------
>>  drivers/net/arcnet/arcnet.c              |  8 ++------
>>  drivers/power/supply/power_supply_leds.c |  5 +----
>>  drivers/usb/common/led.c                 |  4 +---
>>  include/linux/leds.h                     | 16 ++++++++--------
>>  net/mac80211/led.c                       |  2 +-
>>  net/mac80211/led.h                       |  8 ++------
>>  net/netfilter/xt_LED.c                   |  3 +--
>>  10 files changed, 29 insertions(+), 50 deletions(-)
> 
> Just came to apply this and realised that you have touched other
> subsystems without Cc'ing the appropriate maintainers.

Good point, sorry about that.

> Please can you [RESEND] this set and include them please?

Ack, I'm rebasing them on 6.4-rc1, checking no new
users of led_trigger_blink() / led_trigger_blink_oneshot()
(which this set changes the prototype of) have shown up
and then I'll do a resend.

(if I have to make any changes other then the plain rebase
I'll make it a version 2 set instead.)

Regards,

Hans





[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux