Subject: Re: kernel thread helper for vnd(4)
To: Manuel Bouyer <bouyer@antioche.eu.org>
From: Juergen Hannken-Illjes <hannken@eis.cs.tu-bs.de>
List: tech-kern
Date: 03/30/2005 09:07:47
On Tue, Mar 29, 2005 at 10:13:21PM +0200, Manuel Bouyer wrote:
> Hi,
> quoting Jason in a previous mail on this list about vnd problems:
> On Wed, Mar 23, 2005 at 04:52:53PM -0800, Jason Thorpe wrote:
> >
> > This is really a known problem. The vnd driver needs to be rewritten
> > badly. It needs to queue up requests and defer everything to a
> > kthread that actually does the work.
>
> I've changed vnd to use a kernel thread to perform the I/O.
> in the current vnd version, vndstrategy() breaks the request in smaller
> chunks, put these chunks in buffers and queue them up. vndstart() will
> dequeue the buffers and call VOP_STRATEGY().
[snip]
Now that `VND_GETXFER()' and `VND_GETBUF()' are called from process context
they should use `PR_WAIT' instead of `PR_NOWAIT'. Closes PR kern/26272.
--
Juergen Hannken-Illjes - hannken@eis.cs.tu-bs.de - TU Braunschweig (Germany)