macvlan: remove one synchronize_rcu() call
authorEric Dumazet <eric.dumazet@gmail.com>
Thu, 19 May 2011 12:24:16 +0000 (12:24 +0000)
committerDavid S. Miller <davem@davemloft.net>
Fri, 20 May 2011 04:33:18 +0000 (00:33 -0400)
commit449f4544267e73d5db372971da63634707c32299
treeacee6de13f34c179ec46ef7f8a49e66b229f4460
parent034cfe48d0efc248ba4b725e3a94b95e76fbc5d3
macvlan: remove one synchronize_rcu() call

When one macvlan device is dismantled, we can avoid one
synchronize_rcu() call done after deletion from hash list, since caller
will perform a synchronize_net() call after its ndo_stop() call.

Add a new netdev->dismantle field to signal this dismantle intent.

Reduces RTNL hold time.

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
CC: Patrick McHardy <kaber@trash.net>
CC: Ben Greear <greearb@candelatech.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/macvlan.c
include/linux/netdevice.h
net/core/dev.c