On Saturday 28 April 2007 22:12, you wrote: > CONFIG_NETPOLL_TRAP causes the TX queue controls to be completely bypassed > in the netpoll's "trapped" mode which easily causes overflows in the > drivers with short TX queues (most notably, in 8139too with its 4-deep > queue). So, make this option more sensible by making it only bypass the TX > softirq wakeup.
Dammit! Finally forgot to add acks earned so far: > Signed-off-by: Sergei Shtylyov <[EMAIL PROTECTED]> Acked-by: Jeff Garzik <[EMAIL PROTECTED]> Acked-by: Matt Mackall <[EMAIL PROTECTED]> > --- > Split this part form the initial patch as request by Matt Mackall. > > include/linux/netdevice.h | 8 +++----- > 2 files changed, 3 insertions(+), 10 deletions(-) > > Index: linux-2.6/include/linux/netdevice.h > =================================================================== > --- linux-2.6.orig/include/linux/netdevice.h > +++ linux-2.6/include/linux/netdevice.h > @@ -647,8 +647,10 @@ static inline void netif_start_queue(str > static inline void netif_wake_queue(struct net_device *dev) > { > #ifdef CONFIG_NETPOLL_TRAP > - if (netpoll_trap()) > + if (netpoll_trap()) { > + clear_bit(__LINK_STATE_XOFF, &dev->state); > return; > + } > #endif > if (test_and_clear_bit(__LINK_STATE_XOFF, &dev->state)) > __netif_schedule(dev); > @@ -656,10 +658,6 @@ static inline void netif_wake_queue(stru > > static inline void netif_stop_queue(struct net_device *dev) > { > -#ifdef CONFIG_NETPOLL_TRAP > - if (netpoll_trap()) > - return; > -#endif > set_bit(__LINK_STATE_XOFF, &dev->state); > } - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html