Subject: Re: IO throttle VOP
To: None <tech-kern@netbsd.org>
From: Thor Lancelot Simon <tls@rek.tjls.com>
List: tech-kern
Date: 12/18/2001 12:56:16
On Tue, Dec 18, 2001 at 11:58:49AM -0500, der Mouse wrote:
> > The problem is, even if you tell the syncer to get rid of
> > dependencies as fast as it can, there is still no guarantee that
> > there isn't a process that is adding requests more quickly than they
> > can be pushed out to disk.  This is the basic problem that I'm trying
> > to address here.
> 
> Yes...ultimately, you're going to have to block the process that's
> doing that, until the syncer catches up "enough".  ISTM most of the
> discussion is about figuring out where the Right place to do that is.

In some ways, softdep makes the syncer analogous to the LFS cleaner.

Note that in various corner cases, the cleaner putting user processes
to sleep has been a notorious source of deadlock with LFS.  However,
in LFS you have the cleaner, a user-land process, also contending for
transactions/space.  It does serve to highlight that the filesystem
guts of any filesystem are likely to need to be able to do I/O at some
times without worrying about accepting new requests from userland;
the modern crop of filesystems just seem to extend that "some time"
beyond the duration of a single, synchronous system call...

-- 
 Thor Lancelot Simon	                                      tls@rek.tjls.com
   But as he knew no bad language, he had called him all the names of common
 objects that he could think of, and had screamed: "You lamp!  You towel!  You
 plate!" and so on.              --Sigmund Freud