diff options
author | Gao Feng <fgao@ikuai8.com> | 2016-12-07 12:23:18 +0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-12-07 13:22:07 -0500 |
commit | a1f5315ce4e1700e65255c617561aa7d8f09a729 (patch) | |
tree | 304b54f3fc2e758343c65c96f56b1c5642c166f1 /drivers/net/macvlan.c | |
parent | 48140a210b450db229cc9dd927480f65537dc7eb (diff) | |
download | linux-stable-a1f5315ce4e1700e65255c617561aa7d8f09a729.tar.gz linux-stable-a1f5315ce4e1700e65255c617561aa7d8f09a729.tar.bz2 linux-stable-a1f5315ce4e1700e65255c617561aa7d8f09a729.zip |
driver: macvlan: Remove the rcu member of macvlan_port
When free macvlan_port in macvlan_port_destroy, it is safe to free
directly because netdev_rx_handler_unregister could enforce one
grace period.
So it is unnecessary to use kfree_rcu for macvlan_port.
Signed-off-by: Gao Feng <fgao@ikuai8.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/macvlan.c')
-rw-r--r-- | drivers/net/macvlan.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/net/macvlan.c b/drivers/net/macvlan.c index 3c0a1714977b..20b3fdf282c5 100644 --- a/drivers/net/macvlan.c +++ b/drivers/net/macvlan.c @@ -43,7 +43,6 @@ struct macvlan_port { struct net_device *dev; struct hlist_head vlan_hash[MACVLAN_HASH_SIZE]; struct list_head vlans; - struct rcu_head rcu; struct sk_buff_head bc_queue; struct work_struct bc_work; bool passthru; @@ -1151,7 +1150,7 @@ static void macvlan_port_destroy(struct net_device *dev) cancel_work_sync(&port->bc_work); __skb_queue_purge(&port->bc_queue); - kfree_rcu(port, rcu); + kfree(port); } static int macvlan_validate(struct nlattr *tb[], struct nlattr *data[]) |