Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Conflicts: drivers/net/xen-netfront.c Minor overlapping changes in xen-netfront.c, mostly to do with some buffer management changes alongside the split of stats into TX and RX. Signed-off-by: David S. Miller <davem@davemloft.net>
Цей коміт міститься в:
@@ -622,6 +622,7 @@ static int team_change_mode(struct team *team, const char *kind)
|
||||
static void team_notify_peers_work(struct work_struct *work)
|
||||
{
|
||||
struct team *team;
|
||||
int val;
|
||||
|
||||
team = container_of(work, struct team, notify_peers.dw.work);
|
||||
|
||||
@@ -629,9 +630,14 @@ static void team_notify_peers_work(struct work_struct *work)
|
||||
schedule_delayed_work(&team->notify_peers.dw, 0);
|
||||
return;
|
||||
}
|
||||
val = atomic_dec_if_positive(&team->notify_peers.count_pending);
|
||||
if (val < 0) {
|
||||
rtnl_unlock();
|
||||
return;
|
||||
}
|
||||
call_netdevice_notifiers(NETDEV_NOTIFY_PEERS, team->dev);
|
||||
rtnl_unlock();
|
||||
if (!atomic_dec_and_test(&team->notify_peers.count_pending))
|
||||
if (val)
|
||||
schedule_delayed_work(&team->notify_peers.dw,
|
||||
msecs_to_jiffies(team->notify_peers.interval));
|
||||
}
|
||||
@@ -662,6 +668,7 @@ static void team_notify_peers_fini(struct team *team)
|
||||
static void team_mcast_rejoin_work(struct work_struct *work)
|
||||
{
|
||||
struct team *team;
|
||||
int val;
|
||||
|
||||
team = container_of(work, struct team, mcast_rejoin.dw.work);
|
||||
|
||||
@@ -669,9 +676,14 @@ static void team_mcast_rejoin_work(struct work_struct *work)
|
||||
schedule_delayed_work(&team->mcast_rejoin.dw, 0);
|
||||
return;
|
||||
}
|
||||
val = atomic_dec_if_positive(&team->mcast_rejoin.count_pending);
|
||||
if (val < 0) {
|
||||
rtnl_unlock();
|
||||
return;
|
||||
}
|
||||
call_netdevice_notifiers(NETDEV_RESEND_IGMP, team->dev);
|
||||
rtnl_unlock();
|
||||
if (!atomic_dec_and_test(&team->mcast_rejoin.count_pending))
|
||||
if (val)
|
||||
schedule_delayed_work(&team->mcast_rejoin.dw,
|
||||
msecs_to_jiffies(team->mcast_rejoin.interval));
|
||||
}
|
||||
|
Посилання в новій задачі
Заблокувати користувача