Subject: Re: does fsync(2) still ignore some filesystem metadata in 1.6.x?
To: NetBSD Kernel Technical Discussion List <tech-kern@NetBSD.ORG>
From: Bill Studenmund <wrstuden@netbsd.org>
List: port-i386
Date: 12/29/2004 14:00:20
--hOcCNbCCxyk/YU74
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Fri, Nov 26, 2004 at 05:38:03PM -0500, Greg A. Woods wrote:
> The following description of changes to src/sys/ufs/ffs/ffs_vnops.c
> suggests that in 1.6.x an fsync(2) call will _not_ necessarily cause the
> inode data to be flushed:
>=20
> ----------------------------
> revision 1.61
> date: 2003/10/25 19:52:21;  author: kleink;  state: Exp;  lines: +5 -8
> Remove the present incarnation of FSYNC_DATAONLY use from ffs_fsync() and
> ffs_full_fsync(); while it is supposed to hint that the update of _file_
> metadata (as in timestamps et al.) may be omitted it doesn't mean the
> same for _filesystem_ metadata.
> ----------------------------

No. Because fsync(2) does not set this flag, thus the previously-incorrect=
=20
behavior won't be triggered. From my review of the 1.6 branch, only=20
fdatasync(2) sets this flag, thus only it would be impacted by the bug.

While the rest of your note indicates there's an issue with -o async, I=20
doubt it's from this bug.

Take care,

Bill

--hOcCNbCCxyk/YU74
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (NetBSD)

iD8DBQFB0yj0Wz+3JHUci9cRAl83AJ93e6LWLQkSYjNOjjOJqrMu8v9YrwCeK/aw
+XiqCofqfFI7B09K/Zc1m54=
=HlTf
-----END PGP SIGNATURE-----

--hOcCNbCCxyk/YU74--