There is a potential jiffy wraparound bug in the transmit watchdog that is easily avoided by using time_after().
Signed-off-by: Stephen Hemminger <[EMAIL PROTECTED]> --- linux-2.6.orig/net/sched/sch_generic.c +++ linux-2.6/net/sched/sch_generic.c @@ -193,8 +193,10 @@ static void dev_watchdog(unsigned long a netif_running(dev) && netif_carrier_ok(dev)) { if (netif_queue_stopped(dev) && - (jiffies - dev->trans_start) > dev->watchdog_timeo) { - printk(KERN_INFO "NETDEV WATCHDOG: %s: transmit timed out\n", dev->name); + time_after(jiffies, dev->trans_start + dev->watchdog_timeo)) { + + printk(KERN_INFO "NETDEV WATCHDOG: %s: transmit timed out\n", + dev->name); dev->tx_timeout(dev); } if (!mod_timer(&dev->watchdog_timer, jiffies + dev->watchdog_timeo)) - 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