[XFS] Turn off XBF_ASYNC flag before re-reading superblock.
authorLachlan McIlroy <lachlan@sgi.com>
Mon, 15 Oct 2007 03:18:02 +0000 (13:18 +1000)
committerTim Shimmin <tes@chook.melbourne.sgi.com>
Tue, 16 Oct 2007 04:22:39 +0000 (14:22 +1000)
SGI-PV: 971603
SGI-Modid: xfs-linux-melb:xfs-kern:29871a

Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
Signed-off-by: David Chinner <dgc@sgi.com>
Signed-off-by: Tim Shimmin <tes@sgi.com>
fs/xfs/xfs_log_recover.c

index eb341461feb972a8168e9b4202f25746ff413229..851eca8a7150e7746728941a4a2c1ca7898e8054 100644 (file)
@@ -3834,7 +3834,10 @@ xlog_do_recover(
         */
        bp = xfs_getsb(log->l_mp, 0);
        XFS_BUF_UNDONE(bp);
+       ASSERT(!(XFS_BUF_ISWRITE(bp)));
+       ASSERT(!(XFS_BUF_ISDELAYWRITE(bp)));
        XFS_BUF_READ(bp);
+       XFS_BUF_UNASYNC(bp);
        xfsbdstrat(log->l_mp, bp);
        if ((error = xfs_iowait(bp))) {
                xfs_ioerror_alert("xlog_do_recover",