Hi! > Add support for HW offloading of the netdev trigger. > > We need to change spinlock to mutex, because if spinlock is used, the > trigger_offload() method cannot sleep, which can happen for ethernet > PHYs.
Is that bugfix or just needed for offloading? Should be separate patch
in any case.
> Move struct led_trigger_data into global include directory, into file
> linux/ledtrig.h, so that drivers wanting to offload the trigger can
> access its settings.
Separate...
> @@ -327,12 +310,14 @@ static int netdev_trig_notify(struct notifier_block *nb,
> case NETDEV_CHANGE:
> if (netif_carrier_ok(dev))
> trigger_data->linkup = 1;
> + reset = !trigger_data->led_cdev->offloaded;
> break;
> }
>
> - set_baseline_state(trigger_data);
> + if (reset)
> + set_baseline_state(trigger_data);
>
> - spin_unlock_bh(&trigger_data->lock);
> + mutex_unlock(&trigger_data->lock);
>
> return NOTIFY_DONE;
> }
Is this the only thing it saves? Because.. that would not be worth
it.
Best regards,
Pavel
--
http://www.livejournal.com/~pavelmachek
signature.asc
Description: PGP signature
