xfs: xfs_sync_fsdata is redundant
authorDave Chinner <dchinner@redhat.com>
Mon, 8 Oct 2012 10:56:06 +0000 (21:56 +1100)
committerBen Myers <bpm@sgi.com>
Wed, 17 Oct 2012 17:28:47 +0000 (12:28 -0500)
commit34061f5c420561dd42addd252811a1fa4b0ac69b
treee0be8f994c6abd2407a1cb8c805291cea1d95712
parent5889608df35783590251cfd440fa5d48f1855179
xfs: xfs_sync_fsdata is redundant

Why do we need to write the superblock to disk once we've written
all the data?  We don't actually - the reasons for doing this are
lost in the mists of time, and go back to the way Irix used to drive
VFS flushing.

On linux, this code is only called from two contexts: remount and
.sync_fs. In the remount case, the call is followed by a metadata
sync, which unpins and writes the superblock.  In the sync_fs case,
we only need to force the log to disk to ensure that the superblock
is correctly on disk, so we don't actually need to write it. Hence
the functionality is either redundant or superfluous and thus can be
removed.

Seeing as xfs_quiesce_data is essentially now just a log force,
remove it as well and fold the code back into the two callers.
Neither of them need the log covering check, either, as that is
redundant for the remount case, and unnecessary for the .sync_fs
case.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Mark Tinguely <tinguely@sgi.com>
Signed-off-by: Ben Myers <bpm@sgi.com>
fs/xfs/xfs_super.c
fs/xfs/xfs_sync.c