Ivan:

A couple of comments...

On Jan 22, 2010, at 7:33 AM, Ivan Voras wrote:

On 01/22/10 16:10, Ed Schouten wrote:
* Ivan Voras<ivo...@freebsd.org>  wrote:
This is a good and useful addition! I think Windows has implemented a generalization of this (called "wait objects" or something like that),
which effectively allows a select()- (or in this case kqueue())-like
syscall to wait on both file descriptors and condvars (as well as
probably other MS-style objects). It's useful for multiplexing events
for dissimilar sources.

NtWaitForSingleObject(), NtWaitForMultipleObjects(), etc. :-)


Yes, I was thinking about WaitForMultipleObjects() - I sometimes wished I had it in FreeBSD :)

I think the hackers@ side of the thread is missing the original link to the patch file offered for review, so here it is:

http://people.freebsd.org/~rrs/kque_umtx.patch

My kqueue-fu level is too low to be really useful here but from what I've read it looks like a logical and even reasonably clean way of doing it.

thanks it made sense to me ;-)


If I read the comment at filt_umtxattach() correctly, in the best case you would need an extension to the kevent structure to add more fields like data & udata (for passing values back and forth between userland and kernel). I agree with this - it would be very convenient for some future purposes (like file modification notification) if the kernel filter could both accept and return a struct of data from/to the userland.

Yeah, more arguments inside the kevent would allow me to add the COND_CV_WAIT* where a lock and condition are passed in as well... But I was hesitant to add more than was already there since doing
so would cause ABI ripples that I did not want to face.

I plan on committing this to head if I don't get strong "you idiot you did it wrong" comments ;-)


R




_______________________________________________
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org "


------------------------------
Randall Stewart
803-317-4952 (cell)
803-345-0391(direct)

_______________________________________________
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"

Reply via email to