summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2015-02-05 01:13:21 +0100
committerDave Chinner <david@fromorbit.com>2015-02-05 01:13:21 +0100
commitf8079b850c9e130423829c919f3c0802e677099d (patch)
tree453bfde1b546d1bbee9981965c2eb8d64b2cb2db
parentxfs: fix behaviour of XFS_IOC_FSSETXATTR on directories (diff)
downloadlinux-f8079b850c9e130423829c919f3c0802e677099d.tar.xz
linux-f8079b850c9e130423829c919f3c0802e677099d.zip
xfs: growfs should use synchronous transactions
Growfs updates the secondary superblocks using synchronous unlogged buffer writes after committing the updates to the primary superblock. Mark the transaction to the primary superblock as synchronous so that we guarantee it is committed to disk before we update the secondary superblocks. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Dave Chinner <dchinner@redhat.com> Signed-off-by: Dave Chinner <david@fromorbit.com>
-rw-r--r--fs/xfs/xfs_fsops.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/xfs/xfs_fsops.c b/fs/xfs/xfs_fsops.c
index f7114527cd2f..fba6532efba4 100644
--- a/fs/xfs/xfs_fsops.c
+++ b/fs/xfs/xfs_fsops.c
@@ -488,6 +488,7 @@ xfs_growfs_data_private(
xfs_trans_mod_sb(tp, XFS_TRANS_SB_FDBLOCKS, nfree);
if (dpct)
xfs_trans_mod_sb(tp, XFS_TRANS_SB_IMAXPCT, dpct);
+ xfs_trans_set_sync(tp);
error = xfs_trans_commit(tp, 0);
if (error)
return error;