Re: [take29 0/8] kevent: Generic event handling mechanism.
From: Ingo Molnar
Date: Fri Dec 29 2006 - 08:29:10 EST
* Evgeniy Polyakov <johnpol@xxxxxxxxxxx> wrote:
> > (rarer things like mouse/input events can stay with poll
> > notifications)
> > and it is /especially/ important to include block IO events in
> > kevents to be able to judge its performance and scalability relative
> > to the async IO API and infrastructure.
> Yes, async IO is a significant part, and will be implemented, IMHO,
> new design I highlighted in linux-fsdevel@ in AIO related thread is
> the way to go (at least I will imlement it that way).
yes. Note that a prototype exists already: take a look at Tux's "work
atom" infrastructure of how you can build a relatively straightforward
state-machine that can be programmed and can be driven even from IRQ
contexts. Via that i implemented fully asynchronous IO for networking 5
years ago, and programmed it to handle HTTP and FTP protocol server
logic, fully asynchronously. (For block IO it also does emulation of
event handling via the 'cachemiss' kernel threads. State-machine driven
filesystems are quite hard - but not impossible in the long run.)
It would be a natural thing to extend that fundamental concept to
user-space as well. /That/ i'd call a generic, grounds-up event handling
infrastructure. That would be a worthwile unification point for all
existing IO APIs.
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/