lkml.org 
[lkml]   [2006]   [Nov]   [21]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateTue, 21 Nov 2006 21:46:05 +0300
FromEvgeniy Polyakov <>
SubjectRe: [take24 0/6] kevent: Generic event handling mechanism.
On Tue, Nov 21, 2006 at 08:43:34PM +0300, Evgeniy Polyakov (johnpol@2ka.mipt.ru) wrote:
> > I've explained this multiple times.  The struct sigevent structure needs 
> > to be extended to get a new part in the union.  Something like
> > 
> >   struct {
> >     int kevent_fd;
> >     void *data;
> >   } _sigev_kevent;
> > 
> > Then define SIGEV_KEVENT as a value distinct from the other SIGEV_ 
> > values.  In the code which handles setup of timers (the timer_create 
> > syscall), recognize SIGEV_KEVENT and handle it appropriately.  I.e., 
> > call into the code to register the event source, just like you'd do with 
> > the current interface.  Then add the code to post an event to the event 
> > queue where currently signals would be sent et voilà.
> 
> Ok, I see.
> It is doable and simple.
> I will try to implement it tomorrow.

I've checked the code.
Since it will be a union, it is impossible to use _sigev_thread and it
becomes just SIGEV_SIGNAL case with different delivery mechanism.
Is it what you want?

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

\
 
 \ /
  Last update: 2006-11-21 18:55    [from the cache]
©2003-2008