diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2007-09-16 19:43:04 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2007-09-16 19:43:04 -0400 |
commit | d9f30ec0b0d129b9cbf2b041a6a3159aa24592f6 (patch) | |
tree | 325c2d1550ed02e3c652625bb6c9371589af13ff /net/8021q/vlan.c | |
parent | 2a38b775b77f99308a4e571c13d908df78ac5e57 (diff) |
[VLAN]: Fix net_device leak.
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>
Diffstat (limited to 'net/8021q/vlan.c')
-rw-r--r-- | net/8021q/vlan.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/net/8021q/vlan.c b/net/8021q/vlan.c index 1583c5ef963f..2a546919d6fb 100644 --- a/net/8021q/vlan.c +++ b/net/8021q/vlan.c | |||
@@ -562,8 +562,6 @@ static int register_vlan_device(struct net_device *real_dev, | |||
562 | if (err < 0) | 562 | if (err < 0) |
563 | goto out_free_newdev; | 563 | goto out_free_newdev; |
564 | 564 | ||
565 | /* Account for reference in struct vlan_dev_info */ | ||
566 | dev_hold(real_dev); | ||
567 | #ifdef VLAN_DEBUG | 565 | #ifdef VLAN_DEBUG |
568 | printk(VLAN_DBG "Allocated new device successfully, returning.\n"); | 566 | printk(VLAN_DBG "Allocated new device successfully, returning.\n"); |
569 | #endif | 567 | #endif |