serializing token
Chuck Tuffli
chuck_tuffli at agilent.com
Mon Apr 26 09:33:56 PDT 2004
On Mon, Apr 26, 2004 at 12:16:43PM -0400, Matthew Dillon wrote:
>
> :Is it not suitable for protection between the producer and consumer?
> :Specifically, I have a driver that shares an event queue between the
> :interrupt handler and a kernel thread (interrupt creates events,
> :thread processes them). What is the prefered DFly scheme to protect
> :the queue's head/tail pointers?
> :
> :--
> :Chuck Tuffli
> :Agilent Technologies, Storage Area Networking
>
> The answer is: don't have a queue at all, have the driver send a
> message to the kernel thread instead.
This actually fits better with the over-all design and is what I will
try for the DFly version. Since the other *BSDs don't have an analogous
kernel messaging scheme (right?), the driver would need to do
something like you describe below for them, I guess.
> But if you really wanted to have a queue I would use a tail-chasing
> FIFO where the driver always and only manipulates the fifo's write
> index, and the thread always and only manipulates the fifo's read
> index.
Thanks for the help!
--
Chuck Tuffli
Agilent Technologies, Storage Area Networking
More information about the Kernel
mailing list