Date: Thu, 17 Apr 2003 13:45:28 +0200 From: Marko Zec <zec@tel.fer.hr> To: David Schultz <das@FreeBSD.org> Cc: freebsd-stable@FreeBSD.org Subject: Re: PATCH: Forcible delaying of UFS (soft)updates Message-ID: <3E9E93D8.EB16ED42@tel.fer.hr> References: <3E976EBD.C3E66EF8@tel.fer.hr> <20030414101935.GB18110@HAL9000.homeunix.com> <3E9C5975.43755858@tel.fer.hr> <20030416101136.GA868@HAL9000.homeunix.com>
next in thread | previous in thread | raw e-mail | index | archive | help
David Schultz wrote: > On Tue, Apr 15, 2003, Marko Zec wrote: > > > > > - The fiddling with rushjob seems rather arbitrary. You can probably > > > just let the existing code increment it as necessary and force a sync > > > if the value gets too high. > > > > If rushjob is would not be used for forcing prompt synching, the original code > > could not guarantee the sync to occur immediately. Instead, the synching could > > be further delayed for up to 30 seconds, which is not desirable if our major > > design goal is to do as much disk I/O as possible in a small time interval and > > leave the disk idle otherwise. > > I was referring to all the places where rushjob is set to or > incremented by syncer_maxdelay. AFAIK, it should never be that > large. Hmm... Why? :) > I don't think you want to overload a low memory handling > mechanism with the task of syncing the disk. As far as I can see the rushjob variable is used only at one place in kern/vfs_subr.c to notify softupdates synching scheduler to start synching earlier than the normal timers would expire. I just reused the same mechanism to urge synching of dirty buffers when the extra delay timer expires, or when outstanding disk I/O occurs, to coalesce disk updates with occasional disk spinups. Marko
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3E9E93D8.EB16ED42>