[XFS] Don't map non-uptodate buffers in xfs_probe_cluster; also fixes
authorEric Sandeen <sandeen@sgi.com>
Tue, 28 Feb 2006 01:30:30 +0000 (12:30 +1100)
committerNathan Scott <nathans@sgi.com>
Tue, 28 Feb 2006 01:30:30 +0000 (12:30 +1100)
obscure corruption case

SGI-PV: 942658
SGI-Modid: xfs-linux-melb:xfs-kern:207119a

Signed-off-by: Eric Sandeen <sandeen@sgi.com>
Signed-off-by: Nathan Scott <nathans@sgi.com>
fs/xfs/linux-2.6/xfs_aops.c

index 8f2beec526cfb58257dbf77b258384ce2310970b..74d8be87f983d4995c32bc87ebcc89ff33b577bb 100644 (file)
@@ -540,7 +540,7 @@ xfs_probe_cluster(
 
        /* First sum forwards in this page */
        do {
-               if (mapped != buffer_mapped(bh))
+               if (!buffer_uptodate(bh) || (mapped != buffer_mapped(bh)))
                        return total;
                total += bh->b_size;
        } while ((bh = bh->b_this_page) != head);