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 aedf622..aed74a3 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;
 }