Subject: Re: Importing kqueue's from FreeBSD...
To: Jonathan Lemon <jlemon@flugsvamp.com>
From: Jason R Thorpe <thorpej@zembu.com>
List: tech-kern
Date: 03/15/2001 16:02:05
On Thu, Mar 15, 2001 at 03:40:49PM -0600, Jonathan Lemon wrote:
> I'll admit the performance section of the paper is sadly lacking; I'm
> working on that at the moment.
>
> If there is no knote attached to the structure being monitored, then
> the overhead is just a single if() statement. Otherwise, the overhead
> is roughly O(N), where N is the number of knotes attached to the structure.
Yah, seems to me roughly like the overhead of selwakeup(), except not
nearly as pathological when multiple things are looking at a particular
e.g. socket.
I have no beef with kqueue other than the lack of really really really
generic event type stuff.
For example, luke said EVFILT_DEVICE -- ok, so, the problem is that you
get notified that an EVFILT_DEVICE event occurred... was it an insert or
a removal? How do you tell? Unless I missed something, there doesn't
seem to be any way of passing down ancillary data with the event.
--
-- Jason R. Thorpe <thorpej@zembu.com>