Commit 30688a9a authored by Pavel Emelyanov's avatar Pavel Emelyanov Committed by David S. Miller

[VLAN]: Handle vlan devices net namespace changing.

When van device is moved to another namespace proc files,
related to this device, should also change one.

Use the netdev REGISTER and UNREGISTER event handlers for this.
Signed-off-by: default avatarPavel Emelyanov <xemul@openvz.org>
Acked-by: default avatarPatrick McHardy <kaber@trash.net>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 65d292a2
...@@ -154,8 +154,6 @@ void unregister_vlan_dev(struct net_device *dev) ...@@ -154,8 +154,6 @@ void unregister_vlan_dev(struct net_device *dev)
grp = __vlan_find_group(real_dev); grp = __vlan_find_group(real_dev);
BUG_ON(!grp); BUG_ON(!grp);
vlan_proc_rem_dev(dev);
/* Take it out of our own structures, but be sure to interlock with /* Take it out of our own structures, but be sure to interlock with
* HW accelerating devices or SW vlan input packet processing. * HW accelerating devices or SW vlan input packet processing.
*/ */
...@@ -278,9 +276,6 @@ int register_vlan_dev(struct net_device *dev) ...@@ -278,9 +276,6 @@ int register_vlan_dev(struct net_device *dev)
if (real_dev->features & NETIF_F_HW_VLAN_FILTER) if (real_dev->features & NETIF_F_HW_VLAN_FILTER)
real_dev->vlan_rx_add_vid(real_dev, vlan_id); real_dev->vlan_rx_add_vid(real_dev, vlan_id);
if (vlan_proc_add_dev(dev) < 0)
pr_warning("8021q: failed to add proc entry for %s\n",
dev->name);
return 0; return 0;
out_free_group: out_free_group:
...@@ -396,6 +391,14 @@ static void __vlan_device_event(struct net_device *dev, unsigned long event) ...@@ -396,6 +391,14 @@ static void __vlan_device_event(struct net_device *dev, unsigned long event)
pr_warning("8021q: failed to change proc name for %s\n", pr_warning("8021q: failed to change proc name for %s\n",
dev->name); dev->name);
break; break;
case NETDEV_REGISTER:
if (vlan_proc_add_dev(dev) < 0)
pr_warning("8021q: failed to add proc entry for %s\n",
dev->name);
break;
case NETDEV_UNREGISTER:
vlan_proc_rem_dev(dev);
break;
} }
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment