Skip site navigation (1)Skip section navigation (2)
Date:       Fri, 04 Aug 2000 05:41:04 +1000
From:      Peter Jeremy <peter.jeremy@alcatel.com.au>
To:        Paul Coyne <pac@geodesic.com>, Tom <tom@uniserve.com>
Cc:        freebsd-stable@FreeBSD.ORG
Subject:   Re: Cached versus non cached disk I/O
Message-ID:  <00Aug4.072549est.115835@border.alcanet.com.au>
In-Reply-To: <Pine.BSF.4.05.10007112104540.21996-100000@shell.uniserve.ca>; from tom@uniserve.com on Tue, Jul 11, 2000 at 09:06:31PM -0700
References:  <396B8DC4.28CD9727@geodesic.com> <Pine.BSF.4.05.10007112104540.21996-100000@shell.uniserve.ca>

next in thread | previous in thread | raw e-mail | index | archive | help
[catching up on some old mail]

On Tue, Jul 11, 2000 at 04:12:36PM -0500, Paul Coyne wrote:
>Is a mkdir cached?

It depends...  The following table lists the possible UFS mount modes,
together with their caching behaviour, in descending order of FS
integrity:

  mode        data   metadata
softupdates  async*   async*
sync          sync     sync
`normal'     async     sync
async        async    async

Where sync means write-though caching and async means write-back
caching.  async* means that write-back caching is used, but the
write ordering is controlled to ensure FS consistency on disk.

mkdir(2) and symlink(2) entail metadata updates, so they are
cached for both softupdates and async mounts.

>Does a mkdir call from an NFS client wait for a positive response from
>an NFS server prior to handling the next request?

Again, this depends...  By default, NFSv2 is fully synchronous - the
client will wait until the server has committed the change to disk.
NFSv3 allows some asynchronous operations, though I'm uncertain of
the details.  The defaults can be over-ridden by a sysctl.

On Tue, Jul 11, 2000 at 09:06:31PM -0700, Tom wrote:
>  It
>should be obvious that write-buffering metadata can cause problems, even
>with softupdates, though softupdates is clearly better than async.

Not quite.  softupdates is actually more robust than a normal FS
mount (and far more robust than async).  The softupdates code
controls the ordering of both data and metadata writes to ensure
that the FS on disk is always internally consistent.  With a
normal mount, the metadata is mostly internally consistent, but
is not necessarily consistent with the data.

Peter


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?00Aug4.072549est.115835>