xfs
[Top] [All Lists]

[PATCH 17/20] xfs: update the superblock using a synchronous transaction

To: "J. Bruce Fields" <bfields@xxxxxxxxxxxx>
Subject: [PATCH 17/20] xfs: update the superblock using a synchronous transaction in growfs
From: Christoph Hellwig <hch@xxxxxx>
Date: Thu, 22 Jan 2015 12:10:03 +0100
Cc: Jeff Layton <jlayton@xxxxxxxxxxxxxxx>, linux-nfs@xxxxxxxxxxxxxxx, linux-fsdevel@xxxxxxxxxxxxxxx, xfs@xxxxxxxxxxx
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <1421925006-24231-1-git-send-email-hch@xxxxxx>
References: <1421925006-24231-1-git-send-email-hch@xxxxxx>
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@xxxxxx>
---
 fs/xfs/xfs_fsops.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/fs/xfs/xfs_fsops.c b/fs/xfs/xfs_fsops.c
index fdc6422..74c6211 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;
-- 
1.9.1

<Prev in Thread] Current Thread [Next in Thread>