]> nv-tegra.nvidia Code Review - linux-2.6.git/blobdiff - net/8021q/vlan.c
net: add a list_head parameter to dellink() method
[linux-2.6.git] / net / 8021q / vlan.c
index 8836575f9d79dcd9b28c1cfa7d01d034dde9f0c5..6b5c9dddaa7227fb07919a3ae618adae3f22823c 100644 (file)
@@ -140,7 +140,7 @@ static void vlan_rcu_free(struct rcu_head *rcu)
        vlan_group_free(container_of(rcu, struct vlan_group, rcu));
 }
 
-void unregister_vlan_dev(struct net_device *dev)
+void unregister_vlan_dev(struct net_device *dev, struct list_head *head)
 {
        struct vlan_dev_info *vlan = vlan_dev_info(dev);
        struct net_device *real_dev = vlan->real_dev;
@@ -164,7 +164,7 @@ void unregister_vlan_dev(struct net_device *dev)
 
        synchronize_net();
 
-       unregister_netdevice(dev);
+       unregister_netdevice_queue(dev, head);
 
        /* If the group is now empty, kill off the group. */
        if (grp->nr_vlans == 0) {
@@ -535,7 +535,7 @@ static int vlan_device_event(struct notifier_block *unused, unsigned long event,
                        if (grp->nr_vlans == 1)
                                i = VLAN_GROUP_ARRAY_LEN;
 
-                       unregister_vlan_dev(vlandev);
+                       unregister_vlan_dev(vlandev, NULL);
                }
                break;
        }
@@ -642,7 +642,7 @@ static int vlan_ioctl_handler(struct net *net, void __user *arg)
                err = -EPERM;
                if (!capable(CAP_NET_ADMIN))
                        break;
-               unregister_vlan_dev(dev);
+               unregister_vlan_dev(dev, NULL);
                err = 0;
                break;