Skip to contentSkip to conversation

decnet: avoid touching device refcount in dn_dev_by_index()

PATCH Applied Eric Dumazet 2 participants 2 messages Nov 4, 2009

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 decnet: avoid touching device refcount in dn_dev_by_index()

---
 net/decnet/dn_dev.c |   10 ++++++----
 1 files changed, 6 insertions(+), 4 deletions(-)
net/decnet/dn_dev.c +6 -4
index 6e1f085..d566e98 100644
@@ -600,15 +600,17 @@ static void dn_dev_check_default(struct net_device *dev)
 		dev_put(dev);
 }
 
+/*
+ * Called with RTNL
+ */
 static struct dn_dev *dn_dev_by_index(int ifindex)
 {
 	struct net_device *dev;
 	struct dn_dev *dn_dev = NULL;
-	dev = dev_get_by_index(&init_net, ifindex);
-	if (dev) {
+
+	dev = __dev_get_by_index(&init_net, ifindex);
+	if (dev)
 		dn_dev = dev->dn_ptr;
-		dev_put(dev);
-	}
 
 	return dn_dev;
 }