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