Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 15 Apr 2003 21:11:50 +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:  <3E9C5975.43755858@tel.fer.hr>
References:  <3E976EBD.C3E66EF8@tel.fer.hr> <20030414101935.GB18110@HAL9000.homeunix.com>

next in thread | previous in thread | raw e-mail | index | archive | help
David Schultz wrote:

>   For instance, you could
>   have fsync() push the appropriate dirty buffers out to a separate
>   cache, then commit the contents of the cache in the order of the
>   fsyncs when the disk is next active.

Huh... such a concept would still break fsync() semantics. Note that the
original patch also ensures dirty buffers get flushed if / when the disk spins
up, even before the delay timer gets expired.

> - 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.

Marko




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3E9C5975.43755858>