Re: [patch 0/5] Nano/Microsecond resolution for select() and poll()

Arjan van de Ven
2008-08-29T16:12:39Z

On Fri, 29 Aug 2008 17:54:27 +0200
Arnd Bergmann <arnd@arndb.de> wrote:

> On Friday 29 August 2008, Arjan van de Ven wrote:
>
> > With this patch series, the internals of select() and poll()
> > interfaces are changed such that they work on the nanosecond level
> > (using hrtimers). The userspace interface for select() is in
> > microseconds, for pselect() and ppoll() this is in nanoseconds.
>
> Nice work, seems a lot better thought through than my previous
> attempt [1], which unfortunately never saw any reactions.
>
> > even though poll() (as opposed to ppoll()) only accepts milliseconds
> > as userspace interface, the behavior will still improve because the
> > current time no longer needs to be rounded up to the next jiffie,
> > so on average a 500 milliseconds behavior improvement.
>
> That would be 500 microseconds I think.
>
> > I'd like to get rid of the jiffies timeout entirely over time, and
> > only use hrtimers (makes the code a lot nicer) but that's for now
> > a separate step, first I'd like to see how this change pans out.
>
> You mean entirely entirely getting rid of jiffies in the kernel, or
> just with user facing interfaces like epoll_wait, rt_sigtimedwait etc?

I meant actually just in the select() and poll() code; right now it is
sort of dual-brained, I'd like to eventually be able to get rid of that
and just use hrtimers for select() and poll() always

--
If you want to reach me at my work email, use arjan@linux.intel.com
For development, discussion and tips for power savings,
visit http://www.lesswatts.org