Re: [PATCH] RFC: nomadik: expand timesource to 63 bits

Nicolas Pitre
2010-11-11T18:31:54Z

On Thu, 11 Nov 2010, Thomas Gleixner wrote:

> On Thu, 11 Nov 2010, Linus Walleij wrote:
>
> > Thomas Gleixner wrote:
> >
> > > There is only one caveat. When nohz is on and you sleep longer than 16
> > > seconds then the limitation we have in place does not work anymore, as
> > > it would say that the long sleep time is less than the 63bit
> > > wraparound time. With 32bit clocksource it limits the sleep correclty
> > > to avoid the clocksource wrap issue.
> >
> > Hm! So the .mask has that side effect (as I suspected), and with
> > this the sleep will be limited to what time you can get into 63 bits
> > (2200 years). And we sure want NOHZ...
> >
> > But if I complement the solution with the keepwarm() timer from
> > Orion doing just a dummy read() on the clocksource every say 15 secs
> > it will work even if the system sleeps for so long.
>
> Well, you don't need the keepwarm() timer, if you just call
> sched_clock() in the idle wakeup path, so the magic in the NOHZ code
> will ensure that you reread the thing timely.

You still have to make sure you get out of idle before 16 secs has
passed.

Nicolas