Re: [patch 00/13] Syslets, "Threadlets", generic AIO support, v3

From: Davide Libenzi
Date: Fri Mar 02 2007 - 14:13:49 EST


On Fri, 2 Mar 2007, Davide Libenzi wrote:

> And if you really feel raw about the single O(nready) loop that epoll
> currently does, a new epoll_wait2 (or whatever) API could be used to
> deliver the event directly into a userspace buffer [1], directly from the
> poll callback, w/out extra delivery loops (IRQ/event->epoll_callback->event_buffer).

And if you ever wonder from where the "epoll" name came, it came from the
old /dev/epoll. The epoll predecessor /dev/epoll, was adding plugs
everywhere events where needed and was delivering those events in O(1)
*directly* on a user visible (mmap'd) buffer, in a zero-copy fashion.
The old /dev/epoll was faster the the current epoll, but the latter was
chosen because despite being sloghtly slower, it had support for every
pollable device, *without* adding more plugs into the existing code.
Performance and code maintainance are not to be taken disjointly whenever
you evaluate a solution. That's the reason I got excited about this new
generic AIO slution.



- Davide


-
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/