[VLAN]: Fix net_device leak.
authorAl Viro <viro@zeniv.linux.org.uk>
Sun, 16 Sep 2007 23:43:04 +0000 (16:43 -0700)
committerDavid S. Miller <davem@davemloft.net>
Sun, 16 Sep 2007 23:43:04 +0000 (16:43 -0700)
In "[VLAN]: Move device registation to seperate function" (commit
e89fe42cd03c8fd3686df82d8390a235717a66de), a pile of code got moved
to register_vlan_dev(), including grabbing a reference to underlying
device.  However, original dev_hold() had been left behind, so we
leak a reference to net_device now...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/8021q/vlan.c

index 1583c5ef963f06013a455634b5b8604916c1289c..2a546919d6fbd72e10ea6c01dc908e84eb012aa4 100644 (file)
@@ -562,8 +562,6 @@ static int register_vlan_device(struct net_device *real_dev,
        if (err < 0)
                goto out_free_newdev;
 
-       /* Account for reference in struct vlan_dev_info */
-       dev_hold(real_dev);
 #ifdef VLAN_DEBUG
        printk(VLAN_DBG "Allocated new device successfully, returning.\n");
 #endif