Commit c18370f5 authored by Herbert Xu's avatar Herbert Xu Committed by David S. Miller

netpoll: Add netpoll_tx_running

This patch adds the helper netpoll_tx_running for use within
ndo_start_xmit.  It returns non-zero if ndo_start_xmit is being
invoked by netpoll, and zero otherwise.

This is currently implemented by simply looking at the hardirq
count.  This is because for all non-netpoll uses of ndo_start_xmit,
IRQs must be enabled while netpoll always disables IRQs before
calling ndo_start_xmit.
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 8fdd95ec
...@@ -116,6 +116,11 @@ static inline void netpoll_poll_unlock(void *have) ...@@ -116,6 +116,11 @@ static inline void netpoll_poll_unlock(void *have)
} }
} }
static inline int netpoll_tx_running(struct net_device *dev)
{
return irqs_disabled();
}
#else #else
static inline int netpoll_rx(struct sk_buff *skb) static inline int netpoll_rx(struct sk_buff *skb)
{ {
...@@ -139,6 +144,10 @@ static inline void netpoll_poll_unlock(void *have) ...@@ -139,6 +144,10 @@ static inline void netpoll_poll_unlock(void *have)
static inline void netpoll_netdev_init(struct net_device *dev) static inline void netpoll_netdev_init(struct net_device *dev)
{ {
} }
static inline int netpoll_tx_running(struct net_device *dev)
{
return 0;
}
#endif #endif
#endif #endif
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment