[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20061121184605.GA7787@2ka.mipt.ru>
Date: Tue, 21 Nov 2006 21:46:05 +0300
From: Evgeniy Polyakov <johnpol@....mipt.ru>
To: Ulrich Drepper <drepper@...hat.com>
Cc: David Miller <davem@...emloft.net>, Andrew Morton <akpm@...l.org>,
netdev <netdev@...r.kernel.org>,
Zach Brown <zach.brown@...cle.com>,
Christoph Hellwig <hch@...radead.org>,
Chase Venters <chase.venters@...entec.com>,
Johann Borck <johann.borck@...sedata.com>,
linux-kernel@...r.kernel.org, Jeff Garzik <jeff@...zik.org>,
Alexander Viro <aviro@...hat.com>
Subject: Re: [take24 0/6] kevent: Generic event handling mechanism.
On Tue, Nov 21, 2006 at 08:43:34PM +0300, Evgeniy Polyakov (johnpol@....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@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists