Re: [PATCH 3/4] Make net watchdog timers 1 sec jiffy aligned

From: Stephen Hemminger
Date: Wed May 30 2007 - 14:32:38 EST


On Wed, 30 May 2007 10:59:36 -0700
Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote:

> On Tue, 29 May 2007 11:01:13 -0700
> Venki Pallipadi <venkatesh.pallipadi@xxxxxxxxx> wrote:
>
> > round_jiffies for net dev watchdog timer.
> >
> > Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@xxxxxxxxx>
> >
> > Index: linux-2.6.22-rc-mm/net/sched/sch_generic.c
> > ===================================================================
> > --- linux-2.6.22-rc-mm.orig/net/sched/sch_generic.c 2007-05-24 11:16:03.000000000 -0700
> > +++ linux-2.6.22-rc-mm/net/sched/sch_generic.c 2007-05-25 15:10:02.000000000 -0700
> > @@ -224,7 +224,8 @@
> > if (dev->tx_timeout) {
> > if (dev->watchdog_timeo <= 0)
> > dev->watchdog_timeo = 5*HZ;
> > - if (!mod_timer(&dev->watchdog_timer, jiffies + dev->watchdog_timeo))
> > + if (!mod_timer(&dev->watchdog_timer,
> > + round_jiffies(jiffies + dev->watchdog_timeo)))
> > dev_hold(dev);
> > }
> > }
>
> Please cc netdev on net patches.
>
> Again, I worry that if people set the watchdog timeout to, say, 0.1 seconds
> then they will get one second, which is grossly different.
>
> And if they were to set it to 1.5 seconds, they'd get 2.0 which is pretty
> significant, too.

Alternatively, we could change to a timer that is pushed forward after each
TX, maybe using hrtimer and hrtimer_forward(). That way the timer would
never run in normal case.

--
Stephen Hemminger <shemminger@xxxxxxxxxxxxxxxxxxxx>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/