From: Eric Dumazet Date: Fri, 6 Nov 2009 04:47:35 +0000 (-0800) Subject: bridge: remove dev_put() in add_del_if() X-Git-Tag: v2.6.33-rc1~388^2~496 X-Git-Url: http://ftp.safe.ca/?a=commitdiff_plain;h=31ef30c760f7ddb133fa538df1dfbec1f42294d7;p=safe%2Fjmp%2Flinux-2.6 bridge: remove dev_put() in add_del_if() add_del_if() is called with RTNL, we can use __dev_get_by_index() instead of [dev_get_by_index() + dev_put()] Signed-off-by: Eric Dumazet Acked-by: Stephen Hemminger Signed-off-by: David S. Miller --- diff --git a/net/bridge/br_ioctl.c b/net/bridge/br_ioctl.c index 6a6433d..2af6e4a 100644 --- a/net/bridge/br_ioctl.c +++ b/net/bridge/br_ioctl.c @@ -81,6 +81,7 @@ static int get_fdb_entries(struct net_bridge *br, void __user *userbuf, return num; } +/* called with RTNL */ static int add_del_if(struct net_bridge *br, int ifindex, int isadd) { struct net_device *dev; @@ -89,7 +90,7 @@ static int add_del_if(struct net_bridge *br, int ifindex, int isadd) if (!capable(CAP_NET_ADMIN)) return -EPERM; - dev = dev_get_by_index(dev_net(br->dev), ifindex); + dev = __dev_get_by_index(dev_net(br->dev), ifindex); if (dev == NULL) return -EINVAL; @@ -98,7 +99,6 @@ static int add_del_if(struct net_bridge *br, int ifindex, int isadd) else ret = br_del_if(br, dev); - dev_put(dev); return ret; }