Re: [PATCH 2/5] /dev/vring: simple userspace-kernel ringbuffer interface.

From: Evgeniy Polyakov
Date: Sat Apr 19 2008 - 12:34:49 EST


On Sun, Apr 20, 2008 at 02:05:31AM +1000, Rusty Russell (rusty@xxxxxxxxxxxxxxx) wrote:
> > Should this whole function and vring_used_buffer() be protected with
> > vr->lock mutex?
>
> No; it's up to the caller to make sure that they are serialized. In the case
> of tun that happens naturally.
>
> There are two reasons not to grab the lock. It turns out that if we tried to
> lock here, we'd deadlock, since the callbacks are called under the lock.
> Secondly, it's possible to implement an atomic vring_used_buffer variant,
> which could fail: this would avoid using the thread most of the time.

Yep, I decided that too. But it limits its usage to tun only or any
other system where only single thread picks up results, so no generic
userspace ring buffers?

--
Evgeniy Polyakov
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/