Messages in this thread | | | Date | Wed, 11 Oct 2006 18:23:31 +0100 | From | Christoph Hellwig <> | Subject | Re: [patch 0/2] Introduce round_jiffies() to save spurious wakeups |
| |
On Tue, Oct 10, 2006 at 06:02:45PM +0200, Arjan van de Ven wrote: > Hi, > > the following 2 patches will introduce the round_jiffies() api and users > thereof. > > The general idea is that by rounding the jiffies for certain timers to > the next whole second will make those timers all happen at the same > time; and thus reduce the number of times the cpu has to wake up to > service timers (this assumes a tickless kernel) > > Obviously only timers where the exact time of firing isn't so important > can do this; several of the recurring "always live" timers of the kernel > are of this kind, they want "about once a second" or "about once every 4 > seconds" and such, and don't really care about the exact jiffy in which > they fire. > > An alternative would have been to introduce mod_timer_rounded() or > somesuch APIs (but there's many variants that take jiffies); I feel that > an explicit caller based rounding actually is quite reasonable.
I think the API you proposed is horrible. Having jiffies exposed in ani API is a mistake, and adding more makes this problem worse. I'd suggest to start with Alan's patches that add a timer variant that takes a miliseconds argument instead of jiffies and add a _rounded varaint to it that has a new parameter that specifies the precision.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |