summaryrefslogtreecommitdiffstats
path: root/include/linux/netdevice.h
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-05-31 09:13:41 -0700
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-05-31 09:13:41 -0700
commitb9066c268abfe353edf5d646bb486bc03c839348 (patch)
treeb352204c6a773978efc902b28f0b25125f4a0e5b /include/linux/netdevice.h
parent0c27011a7562f2b67bec61509e21113ec125aba1 (diff)
parent85553ddafc5415534bcbe63ffa3af6506e6a754e (diff)
downloadcachepc-linux-b9066c268abfe353edf5d646bb486bc03c839348.tar.gz
cachepc-linux-b9066c268abfe353edf5d646bb486bc03c839348.zip
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
* 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: (24 commits) [IPSEC]: Add xfrm_sysctl.txt. [BRIDGE]: Round off STP perodic timers. [BRIDGE]: Reduce frequency of forwarding cleanup timer in bridge. [TCP] tcp_probe: use GCC printf attribute [TCP] tcp_probe: a trivial fix for mismatched number of printl arguments. [IPV6] ADDRCONF: Fix conflicts in DEVCONF_xxx constant. [NET] napi: Call __netif_rx_complete in netif_rx_complete [TCP]: Consolidate checking for tcp orphan count being too big. [SOCK]: Shrink struct sock by 8 bytes on 64-bit. [AF_PACKET]: Kill CONFIG_PACKET_SOCKET. [IPV6]: Fix build warning. [AF_PACKET]: Kill bogus CONFIG_PACKET_MULTICAST [IPV4]: Kill references to bogus non-existent CONFIG_IP_NOSIOCRT [IPSEC]: Fix panic when using inter address familiy IPsec on loopback. [NET]: parse ip:port strings correctly in in4_pton [IPV6] ROUTE: No longer handle ::/0 specially. [IPSEC]: Fix IPv6 AH calculation in outbound [XFRM]: xfrm_larval_drop sysctl should be __read_mostly. [XFRM]: Allow XFRM_ACQ_EXPIRES to be tunable via sysctl. [CASSINI]: Fix printk message typo. ...
Diffstat (limited to 'include/linux/netdevice.h')
-rw-r--r--include/linux/netdevice.h27
1 files changed, 12 insertions, 15 deletions
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
index f671cd2f133f..3a70f553b28f 100644
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
@@ -910,6 +910,17 @@ static inline int netif_rx_reschedule(struct net_device *dev, int undo)
return 0;
}
+/* same as netif_rx_complete, except that local_irq_save(flags)
+ * has already been issued
+ */
+static inline void __netif_rx_complete(struct net_device *dev)
+{
+ BUG_ON(!test_bit(__LINK_STATE_RX_SCHED, &dev->state));
+ list_del(&dev->poll_list);
+ smp_mb__before_clear_bit();
+ clear_bit(__LINK_STATE_RX_SCHED, &dev->state);
+}
+
/* Remove interface from poll list: it must be in the poll list
* on current cpu. This primitive is called by dev->poll(), when
* it completes the work. The device cannot be out of poll list at this
@@ -920,10 +931,7 @@ static inline void netif_rx_complete(struct net_device *dev)
unsigned long flags;
local_irq_save(flags);
- BUG_ON(!test_bit(__LINK_STATE_RX_SCHED, &dev->state));
- list_del(&dev->poll_list);
- smp_mb__before_clear_bit();
- clear_bit(__LINK_STATE_RX_SCHED, &dev->state);
+ __netif_rx_complete(dev);
local_irq_restore(flags);
}
@@ -940,17 +948,6 @@ static inline void netif_poll_enable(struct net_device *dev)
clear_bit(__LINK_STATE_RX_SCHED, &dev->state);
}
-/* same as netif_rx_complete, except that local_irq_save(flags)
- * has already been issued
- */
-static inline void __netif_rx_complete(struct net_device *dev)
-{
- BUG_ON(!test_bit(__LINK_STATE_RX_SCHED, &dev->state));
- list_del(&dev->poll_list);
- smp_mb__before_clear_bit();
- clear_bit(__LINK_STATE_RX_SCHED, &dev->state);
-}
-
static inline void netif_tx_lock(struct net_device *dev)
{
spin_lock(&dev->_xmit_lock);