xfs: cover the log on freeze instead of cleaning it
authorBrian Foster <bfoster@redhat.com>
Sat, 23 Jan 2021 00:48:24 +0000 (16:48 -0800)
committerDarrick J. Wong <djwong@kernel.org>
Sat, 23 Jan 2021 00:54:52 +0000 (16:54 -0800)
Filesystem freeze cleans the log and immediately redirties it so log
recovery runs if a crash occurs after the filesystem is frozen. Now
that log quiesce covers the log, there is no need to clean the log and
redirty it to trigger log recovery because covering has the same
effect. Update xfs_fs_freeze() to quiesce (and thus cover) the log.

Signed-off-by: Brian Foster <bfoster@redhat.com>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Allison Henderson <allison.henderson@oracle.com>
fs/xfs/xfs_super.c

index aedf622d221bb8688dadddb4b2d4a239345d493a..aed74a3fc78769cc32bd4572425f68f3cd5ac3b7 100644 (file)
@@ -889,8 +889,7 @@ xfs_fs_freeze(
        flags = memalloc_nofs_save();
        xfs_stop_block_reaping(mp);
        xfs_save_resvblks(mp);
-       xfs_log_clean(mp);
-       ret = xfs_sync_sb(mp, true);
+       ret = xfs_log_quiesce(mp);
        memalloc_nofs_restore(flags);
        return ret;
 }