diff options
author | Stephen Hemminger <shemminger@osdl.org> | 2006-05-09 02:11:26 +0400 |
---|---|---|
committer | Stephen Hemminger <shemminger@osdl.org> | 2006-05-09 03:00:23 +0400 |
commit | d324031245abbb54e4e0321004430826052b6c37 (patch) | |
tree | 23dda7055fce9675263fe992c3beda27f1161650 /include/linux | |
parent | 6810b548b25114607e0814612d84125abccc0a4f (diff) | |
download | linux-d324031245abbb54e4e0321004430826052b6c37.tar.xz |
sky2: backout NAPI reschedule
This is a backout of earlier patch.
The whole rescheduling hack was a bad idea. It doesn't really solve
the problem and it makes the code more complicated for no good reason.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/netdevice.h | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index 309f9190a922..a461b51d6076 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h @@ -831,21 +831,19 @@ static inline void netif_rx_schedule(struct net_device *dev) __netif_rx_schedule(dev); } - -static inline void __netif_rx_reschedule(struct net_device *dev, int undo) -{ - dev->quota += undo; - list_add_tail(&dev->poll_list, &__get_cpu_var(softnet_data).poll_list); - __raise_softirq_irqoff(NET_RX_SOFTIRQ); -} - -/* Try to reschedule poll. Called by dev->poll() after netif_rx_complete(). */ +/* Try to reschedule poll. Called by dev->poll() after netif_rx_complete(). + * Do not inline this? + */ static inline int netif_rx_reschedule(struct net_device *dev, int undo) { if (netif_rx_schedule_prep(dev)) { unsigned long flags; + + dev->quota += undo; + local_irq_save(flags); - __netif_rx_reschedule(dev, undo); + list_add_tail(&dev->poll_list, &__get_cpu_var(softnet_data).poll_list); + __raise_softirq_irqoff(NET_RX_SOFTIRQ); local_irq_restore(flags); return 1; } |