[VLAN]: Fix net_device leak.
Al Viro [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 1583c5e..2a54691 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