On Thu, May 14, 2009 at 01:12:40PM -0400, Christoph Hellwig wrote:
> xfs_sync_inodes is used to write back either file data or inode metadata.
> In generally we always do these separately, except for one fishy case in
> xfs_fs_put_super that does both. So separate xfs_sync_inodes into
> separate xfs_sync_data and xfs_sync_attr functions. In xfs_fs_put_super
> we first call the data sync and then the attr sync as that was the previous
> order. The moved log force in that path doesn't make a different because
^^^^^^^^^
Typo.
> Index: xfs/fs/xfs/linux-2.6/xfs_super.c
> ===================================================================
> --- xfs.orig/fs/xfs/linux-2.6/xfs_super.c 2009-05-14 19:09:00.178792110
> +0200
> +++ xfs/fs/xfs/linux-2.6/xfs_super.c 2009-05-14 19:09:05.278808755 +0200
> @@ -1070,7 +1070,18 @@ xfs_fs_put_super(
> int unmount_event_flags = 0;
>
> xfs_syncd_stop(mp);
> - xfs_sync_inodes(mp, SYNC_ATTR|SYNC_DELWRI);
> +
> + if (!(sb->s_flags & MS_RDONLY)) {
> + /*
> + * XXX(hch): this should be SYNC_WAIT.
> + *
> + * Or more likely no needed at all because the VFS is already
^^
Typo.
--
Real Programmers consider "what you see is what you get" to be just as bad a
concept in Text Editors as it is in women. No, the Real Programmer wants a
"you asked for it, you got it" text editor -- complicated, cryptic,
powerful, unforgiving, dangerous.
|