aboutsummaryrefslogtreecommitdiffstats
path: root/net/8021q
diff options
context:
space:
mode:
Diffstat (limited to 'net/8021q')
-rw-r--r--net/8021q/vlan.c3
-rw-r--r--net/8021q/vlan_dev.c3
2 files changed, 3 insertions, 3 deletions
diff --git a/net/8021q/vlan.c b/net/8021q/vlan.c
index 718d635d3379..b2274d1fd605 100644
--- a/net/8021q/vlan.c
+++ b/net/8021q/vlan.c
@@ -119,6 +119,9 @@ void unregister_vlan_dev(struct net_device *dev, struct list_head *head)
119 119
120 grp->nr_vlans--; 120 grp->nr_vlans--;
121 121
122 if (vlan->flags & VLAN_FLAG_GVRP)
123 vlan_gvrp_request_leave(dev);
124
122 vlan_group_set_device(grp, vlan_id, NULL); 125 vlan_group_set_device(grp, vlan_id, NULL);
123 /* Because unregister_netdevice_queue() makes sure at least one rcu 126 /* Because unregister_netdevice_queue() makes sure at least one rcu
124 * grace period is respected before device freeing, 127 * grace period is respected before device freeing,
diff --git a/net/8021q/vlan_dev.c b/net/8021q/vlan_dev.c
index d174c312b7f1..58f8010e1aef 100644
--- a/net/8021q/vlan_dev.c
+++ b/net/8021q/vlan_dev.c
@@ -314,9 +314,6 @@ static int vlan_dev_stop(struct net_device *dev)
314 struct vlan_dev_info *vlan = vlan_dev_info(dev); 314 struct vlan_dev_info *vlan = vlan_dev_info(dev);
315 struct net_device *real_dev = vlan->real_dev; 315 struct net_device *real_dev = vlan->real_dev;
316 316
317 if (vlan->flags & VLAN_FLAG_GVRP)
318 vlan_gvrp_request_leave(dev);
319
320 dev_mc_unsync(real_dev, dev); 317 dev_mc_unsync(real_dev, dev);
321 dev_uc_unsync(real_dev, dev); 318 dev_uc_unsync(real_dev, dev);
322 if (dev->flags & IFF_ALLMULTI) 319 if (dev->flags & IFF_ALLMULTI)