cvs commit: src/sys/kern kern_event.c src/sys/sys eventvar.h
Brian Fundakowski Feldman
green at FreeBSD.org
Wed Jul 14 10:35:46 PDT 2004
On Wed, Jul 14, 2004 at 10:43:23AM -0400, Robert Watson wrote:
>
> On Wed, 14 Jul 2004, Alfred Perlstein wrote:
>
> > Log:
> > Make FIOASYNC, FIOSETOWN and FIOGETOWN work on kqueues.
>
> Have you tried testing this on a kqueue used to monitor signals? I'd draw
> your particular attention to the following newly enabled code path:
>
> pgsigio() -> psignal() -> tdsignal() -> do_tdsignal() -> KNOTE() ->
> knote() -> KNOTE_ACTIVATE() -> knote_enqueue() -> kqueue_wakeup() ->
> pgsigio()
>
> It strikes me that adding sigio support to kqueue opens a massive can of
> worms, not least of which is how you prevent the above from causing the
> system to panic, not to mention how you handle locking in what is
> otherwise a set of leaf functions in kqueue. I'd like it if you could
> back this out until locking for kqueue is resolved, as while this is no
> doubt a useful feature, having the locking working is much more useful to
> us for 5.3.
Agreed. Much of kqueue "barely works" as is (that is, other than pretty
much all of it which is broken with regard to concurrency); adding more
interfaces, especially this one, is not a good idea (right now?).
--
Brian Fundakowski Feldman \'[ FreeBSD ]''''''''''\
<> green at FreeBSD.org \ The Power to Serve! \
Opinions expressed are my own. \,,,,,,,,,,,,,,,,,,,,,,\
More information about the cvs-src
mailing list