Re: kqueue microbenchmark results

From: Alfred Perlstein (bright@wintelcom.net)
Date: Thu Oct 26 2000 - 20:46:49 EST


* Alan Cox <alan@lxorguk.ukuu.org.uk> [001026 18:33] wrote:
> > the application of a close event. What can I say, "the fd formerly known
> > as X" is now gone? It would be incorrect to say that "fd X was closed",
> > since X no longer refers to anything, and the application may have reused
> > that fd for another file.
>
> Which is precisely why you need to know where in the chain of events this
> happened. Otherwise if I see
>
> 'read on fd 5'
> 'read on fd 5'
>
> How do I know which read is for which fd in the multithreaded case

No you don't, you don't see anything with the current code unless
fd 5 is still around, what you're presenting to Jonathan is a
application threading problem, not something that need to be
resolved by the OS.

> > As for the multi-thread case, this would be a bug; if one thread closes
> > the descriptor, the other thread is going to get an EBADF when it goes
> > to perform the read.
>
> Another thread may already have reused the fd

This is another example of an application threading problem.

-- 
-Alfred Perlstein - [bright@wintelcom.net|alfred@freebsd.org]
"I have the heart of a child; I keep it in a jar on my desk."
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Tue Oct 31 2000 - 21:00:20 EST