diff options
author | Rafał Miłecki <zajec5@gmail.com> | 2016-01-02 22:15:40 +0000 |
---|---|---|
committer | Rafał Miłecki <zajec5@gmail.com> | 2016-01-02 22:15:40 +0000 |
commit | fec331baef5253c5e6f7032761d511642898dd1a (patch) | |
tree | 44e75ebd47848b2f54c6c5059fd00f3b7df89792 | |
parent | 14b19c7d407793b4d40f459dc366e3471a5c007c (diff) | |
download | upstream-fec331baef5253c5e6f7032761d511642898dd1a.tar.gz upstream-fec331baef5253c5e6f7032761d511642898dd1a.tar.bz2 upstream-fec331baef5253c5e6f7032761d511642898dd1a.zip |
ledtrig-netdev: don't stop timer on events for different interfaces
This fixes regression introduced in my recent ledtrig-netdev commit.
Events triggered by different interfaces were stopping timer so it
wasn't working for tx/rx mode.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Backport of r48072
git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48074 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r-- | target/linux/generic/files/drivers/leds/ledtrig-netdev.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/target/linux/generic/files/drivers/leds/ledtrig-netdev.c b/target/linux/generic/files/drivers/leds/ledtrig-netdev.c index 5d0f95499b..cfa4dc0758 100644 --- a/target/linux/generic/files/drivers/leds/ledtrig-netdev.c +++ b/target/linux/generic/files/drivers/leds/ledtrig-netdev.c @@ -269,11 +269,12 @@ static int netdev_trig_notify(struct notifier_block *nb, return NOTIFY_DONE; spin_lock_bh(&trigger_data->lock); - del_timer_sync(&trigger_data->timer); if (strcmp(dev->name, trigger_data->device_name)) goto done; + del_timer_sync(&trigger_data->timer); + if (evt == NETDEV_REGISTER || evt == NETDEV_CHANGENAME) { if (trigger_data->net_dev != NULL) dev_put(trigger_data->net_dev); |