diff options
-rw-r--r-- | drivers/net/e1000/e1000_main.c | 2 | ||||
-rw-r--r-- | include/linux/netdevice.h | 6 | ||||
-rw-r--r-- | net/ipv4/igmp.c | 2 | ||||
-rw-r--r-- | net/ipv4/ipmr.c | 4 | ||||
-rw-r--r-- | net/sched/sch_generic.c | 2 |
5 files changed, 9 insertions, 7 deletions
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c index f39de16e6b97..49cd096a3c3d 100644 --- a/drivers/net/e1000/e1000_main.c +++ b/drivers/net/e1000/e1000_main.c | |||
@@ -920,7 +920,7 @@ e1000_remove(struct pci_dev *pdev) | |||
920 | unregister_netdev(netdev); | 920 | unregister_netdev(netdev); |
921 | #ifdef CONFIG_E1000_NAPI | 921 | #ifdef CONFIG_E1000_NAPI |
922 | for (i = 0; i < adapter->num_rx_queues; i++) | 922 | for (i = 0; i < adapter->num_rx_queues; i++) |
923 | __dev_put(&adapter->polling_netdev[i]); | 923 | dev_put(&adapter->polling_netdev[i]); |
924 | #endif | 924 | #endif |
925 | 925 | ||
926 | if (!e1000_check_phy_reset_block(&adapter->hw)) | 926 | if (!e1000_check_phy_reset_block(&adapter->hw)) |
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index b825be201bce..950dc55e5192 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h | |||
@@ -712,8 +712,10 @@ static inline void dev_put(struct net_device *dev) | |||
712 | atomic_dec(&dev->refcnt); | 712 | atomic_dec(&dev->refcnt); |
713 | } | 713 | } |
714 | 714 | ||
715 | #define __dev_put(dev) atomic_dec(&(dev)->refcnt) | 715 | static inline void dev_hold(struct net_device *dev) |
716 | #define dev_hold(dev) atomic_inc(&(dev)->refcnt) | 716 | { |
717 | atomic_inc(&dev->refcnt); | ||
718 | } | ||
717 | 719 | ||
718 | /* Carrier loss detection, dial on demand. The functions netif_carrier_on | 720 | /* Carrier loss detection, dial on demand. The functions netif_carrier_on |
719 | * and _off may be called from IRQ context, but it is caller | 721 | * and _off may be called from IRQ context, but it is caller |
diff --git a/net/ipv4/igmp.c b/net/ipv4/igmp.c index 3ec502f19da0..d512239a1473 100644 --- a/net/ipv4/igmp.c +++ b/net/ipv4/igmp.c | |||
@@ -1382,7 +1382,7 @@ static struct in_device * ip_mc_find_dev(struct ip_mreqn *imr) | |||
1382 | dev = ip_dev_find(imr->imr_address.s_addr); | 1382 | dev = ip_dev_find(imr->imr_address.s_addr); |
1383 | if (!dev) | 1383 | if (!dev) |
1384 | return NULL; | 1384 | return NULL; |
1385 | __dev_put(dev); | 1385 | dev_put(dev); |
1386 | } | 1386 | } |
1387 | 1387 | ||
1388 | if (!dev && !ip_route_output_key(&rt, &fl)) { | 1388 | if (!dev && !ip_route_output_key(&rt, &fl)) { |
diff --git a/net/ipv4/ipmr.c b/net/ipv4/ipmr.c index 5c94c222e3f3..717ab7d6d7b6 100644 --- a/net/ipv4/ipmr.c +++ b/net/ipv4/ipmr.c | |||
@@ -415,10 +415,10 @@ static int vif_add(struct vifctl *vifc, int mrtsock) | |||
415 | return -ENOBUFS; | 415 | return -ENOBUFS; |
416 | break; | 416 | break; |
417 | case 0: | 417 | case 0: |
418 | dev=ip_dev_find(vifc->vifc_lcl_addr.s_addr); | 418 | dev = ip_dev_find(vifc->vifc_lcl_addr.s_addr); |
419 | if (!dev) | 419 | if (!dev) |
420 | return -EADDRNOTAVAIL; | 420 | return -EADDRNOTAVAIL; |
421 | __dev_put(dev); | 421 | dev_put(dev); |
422 | break; | 422 | break; |
423 | default: | 423 | default: |
424 | return -EINVAL; | 424 | return -EINVAL; |
diff --git a/net/sched/sch_generic.c b/net/sched/sch_generic.c index 99ceb91f0150..31eb83717c26 100644 --- a/net/sched/sch_generic.c +++ b/net/sched/sch_generic.c | |||
@@ -234,7 +234,7 @@ static void dev_watchdog_down(struct net_device *dev) | |||
234 | { | 234 | { |
235 | spin_lock_bh(&dev->xmit_lock); | 235 | spin_lock_bh(&dev->xmit_lock); |
236 | if (del_timer(&dev->watchdog_timer)) | 236 | if (del_timer(&dev->watchdog_timer)) |
237 | __dev_put(dev); | 237 | dev_put(dev); |
238 | spin_unlock_bh(&dev->xmit_lock); | 238 | spin_unlock_bh(&dev->xmit_lock); |
239 | } | 239 | } |
240 | 240 | ||