[XFS] Make freeze code a little cleaner.

Fixes a few small issues (mostly cosmetic) that were picked up during the
review cycle for the last set of freeze path changes.

SGI-PV: 959267
SGI-Modid: xfs-linux-melb:xfs-kern:28035a

Signed-off-by: David Chinner <dgc@sgi.com>
Signed-off-by: Christoph Hellwig <hch@infradead.org>
Signed-off-by: Tim Shimmin <tes@sgi.com>
This commit is contained in:
David Chinner 2007-02-10 18:37:22 +11:00 committed by Tim Shimmin
parent f7c99b6fc7
commit 3c0dc77b42
3 changed files with 11 additions and 11 deletions

View File

@ -667,7 +667,7 @@ xfs_fs_sync_super(
* occur here so don't bother flushing the buftarg (i.e * occur here so don't bother flushing the buftarg (i.e
* SYNC_QUIESCE) because it'll just get dirty again. * SYNC_QUIESCE) because it'll just get dirty again.
*/ */
flags = SYNC_FSDATA | SYNC_DELWRI | SYNC_WAIT | SYNC_DIO_WAIT; flags = SYNC_FSDATA | SYNC_DELWRI | SYNC_WAIT | SYNC_IOWAIT;
} else } else
flags = SYNC_FSDATA | (wait ? SYNC_WAIT : 0); flags = SYNC_FSDATA | (wait ? SYNC_WAIT : 0);

View File

@ -91,8 +91,7 @@ typedef enum {
#define SYNC_FSDATA 0x0020 /* flush fs data (e.g. superblocks) */ #define SYNC_FSDATA 0x0020 /* flush fs data (e.g. superblocks) */
#define SYNC_REFCACHE 0x0040 /* prune some of the nfs ref cache */ #define SYNC_REFCACHE 0x0040 /* prune some of the nfs ref cache */
#define SYNC_REMOUNT 0x0080 /* remount readonly, no dummy LRs */ #define SYNC_REMOUNT 0x0080 /* remount readonly, no dummy LRs */
#define SYNC_QUIESCE 0x0100 /* quiesce fileystem for a snapshot */ #define SYNC_IOWAIT 0x0100 /* wait for all I/O to complete */
#define SYNC_DIO_WAIT 0x0200 /* wait for direct I/O to complete */
#define SHUTDOWN_META_IO_ERROR 0x0001 /* write attempt to metadata failed */ #define SHUTDOWN_META_IO_ERROR 0x0001 /* write attempt to metadata failed */
#define SHUTDOWN_LOG_IO_ERROR 0x0002 /* write attempt to the log failed */ #define SHUTDOWN_LOG_IO_ERROR 0x0002 /* write attempt to the log failed */

View File

@ -872,10 +872,10 @@ xfs_statvfs(
* this by simply making sure the log gets flushed * this by simply making sure the log gets flushed
* if SYNC_BDFLUSH is set, and by actually writing it * if SYNC_BDFLUSH is set, and by actually writing it
* out otherwise. * out otherwise.
* SYNC_DIO_WAIT - The caller wants us to wait for all direct I/Os * SYNC_IOWAIT - The caller wants us to wait for all data I/O to complete
* as well to ensure all data I/O completes before we * before we return (including direct I/O). Forms the drain
* return. Forms the drain side of the write barrier needed * side of the write barrier needed to safely quiesce the
* to safely quiesce the filesystem. * filesystem.
* *
*/ */
/*ARGSUSED*/ /*ARGSUSED*/
@ -1174,10 +1174,11 @@ xfs_sync_inodes(
} }
/* /*
* When freezing, we need to wait ensure direct I/O is complete * When freezing, we need to wait ensure all I/O (including direct
* as well to ensure all data modification is complete here * I/O) is complete to ensure no further data modification can take
* place after this point
*/ */
if (flags & SYNC_DIO_WAIT) if (flags & SYNC_IOWAIT)
vn_iowait(vp); vn_iowait(vp);
if (flags & SYNC_BDFLUSH) { if (flags & SYNC_BDFLUSH) {
@ -1975,7 +1976,7 @@ xfs_freeze(
/* flush inodes and push all remaining buffers out to disk */ /* flush inodes and push all remaining buffers out to disk */
xfs_quiesce_fs(mp); xfs_quiesce_fs(mp);
BUG_ON(atomic_read(&mp->m_active_trans) > 0); ASSERT_ALWAYS(atomic_read(&mp->m_active_trans) == 0);
/* Push the superblock and write an unmount record */ /* Push the superblock and write an unmount record */
xfs_log_unmount_write(mp); xfs_log_unmount_write(mp);