Subject: Re: Importing kqueue's from FreeBSD...
To: Bill Sommerfeld <sommerfeld@orchard.arlington.ma.us>
From: Jason R Thorpe <thorpej@zembu.com>
List: tech-kern
Date: 03/16/2001 07:23:13
On Fri, Mar 16, 2001 at 12:56:24AM -0500, Bill Sommerfeld wrote:

 > this suggests to me that the "filter" callback should really be in 3
 > parts..

I agree with you except for:

 >  - one invoked when a process first asks for the event (invoked in
 > 	that process).

I don't understand what this one would be for -- for copyting data into
the kernel?  IIRC, the current "user provided data" is simply a pointer
into the user's address space that is passed as-is when the event occurs.
The example provided in the paper was to use it to dispatch the handler
function (i.e. the pointer was just a pointer to a function, and you simply
jump through it).

 >  - one invoked when the event happens (which could be in any context
 > 	-- interrupt level, process context of some other process, ...)
 >  - one invoked when the event actually gets posted to the process
 > 	(again invoked in that process)
 > 
 > 					- Bill
 > 
 > 

-- 
        -- Jason R. Thorpe <thorpej@zembu.com>