Re: [take24 0/6] kevent: Generic event handling mechanism.

2006-12-28 Thread Evgeniy Polyakov
On Wed, Dec 27, 2006 at 12:45:50PM -0800, Ulrich Drepper ([EMAIL PROTECTED]) wrote: > Evgeniy Polyakov wrote: > > Why do we want to inject _ready_ event, when it is possible to mark > > event as ready and wakeup thread parked in syscall? > > Going back to this old one: > > How do you want to mar

Re: [take24 0/6] kevent: Generic event handling mechanism.

2006-12-27 Thread Ulrich Drepper
Evgeniy Polyakov wrote: > Why do we want to inject _ready_ event, when it is possible to mark > event as ready and wakeup thread parked in syscall? Going back to this old one: How do you want to mark an event ready if you don't want to introduce yet another layer of data structures? The event no

Re: [take24 0/6] kevent: Generic event handling mechanism.

2006-11-28 Thread Evgeniy Polyakov
On Mon, Nov 27, 2006 at 11:12:21AM -0800, Ulrich Drepper ([EMAIL PROTECTED]) wrote: > Evgeniy Polyakov wrote: > >It just sets hrtimer with abs time and sleeps - it can achieve the same > >goals using similar to wait_event() mechanism. > > I don't follow. Of course it is somehow possible to wait

Re: [take24 0/6] kevent: Generic event handling mechanism.

2006-11-28 Thread Evgeniy Polyakov
On Mon, Nov 27, 2006 at 10:23:39AM -0800, Ulrich Drepper ([EMAIL PROTECTED]) wrote: > Evgeniy Polyakov wrote: > > > >With provided patch it is possible to wakeup 'for-free' - just call > >kevent_ctl(ready) with zero number of ready events, so thread will be > >awakened if it was in poll(kevent_fd)

Re: [take24 0/6] kevent: Generic event handling mechanism.

2006-11-27 Thread Ulrich Drepper
Evgeniy Polyakov wrote: It just sets hrtimer with abs time and sleeps - it can achieve the same goals using similar to wait_event() mechanism. I don't follow. Of course it is somehow possible to wait until an absolute deadline. But it's not part of the parameter list and hence easily and _q

Re: [take24 0/6] kevent: Generic event handling mechanism.

2006-11-27 Thread Ulrich Drepper
Evgeniy Polyakov wrote: With provided patch it is possible to wakeup 'for-free' - just call kevent_ctl(ready) with zero number of ready events, so thread will be awakened if it was in poll(kevent_fd), kevent_wait() or kevent_get_events(). Yes, I realize that. But I wrote something else: >> R

Re: [take24 0/6] kevent: Generic event handling mechanism.

2006-11-19 Thread Ulrich Drepper
Evgeniy Polyakov wrote: Possible solution: a) it would be possible to have a "used" flag in each ring buffer entry. That's too expensive, I guess. b) kevent_wait needs another parameter which specifies the which is the last (i.e., least recently added) entry in the ring buffer. Everyth

Re: [take24 0/6] kevent: Generic event handling mechanism.

2006-11-13 Thread Evgeniy Polyakov
On Mon, Nov 13, 2006 at 01:54:58PM +0300, Evgeniy Polyakov ([EMAIL PROTECTED]) wrote: > > === > > > > - there is really no reason to invent yet another timer implementation. > > We have the POSIX timers which are feature rich and nicely > > implemented. All that is needed is

Re: [take24 0/6] kevent: Generic event handling mechanism.

2006-11-13 Thread Evgeniy Polyakov
On Sat, Nov 11, 2006 at 02:28:53PM -0800, Ulrich Drepper ([EMAIL PROTECTED]) wrote: > Evgeniy Polyakov wrote: > >Generic event handling mechanism. > >[...] > > Sorry for the delay again. Kernel work is simply not my highest priority. > > I've collected my comments on some parts of the patch. I

Re: [take24 0/6] kevent: Generic event handling mechanism.

2006-11-11 Thread Ulrich Drepper
Evgeniy Polyakov wrote: Generic event handling mechanism. [...] Sorry for the delay again. Kernel work is simply not my highest priority. I've collected my comments on some parts of the patch. I haven't gone through every part of the patch yet. Sorry for the length. ===

[take24 0/6] kevent: Generic event handling mechanism.

2006-11-09 Thread Evgeniy Polyakov
Generic event handling mechanism. Kevent is a generic subsytem which allows to handle event notifications. It supports both level and edge triggered events. It is similar to poll/epoll in some cases, but it is more scalable, it is faster and allows to work with essentially eny kind of events. Ev