summaryrefslogtreecommitdiff
path: root/fs
diff options
context:
space:
mode:
authorEric Sandeen <sandeen@sgi.com>2006-02-28 12:30:30 +1100
committerNathan Scott <nathans@sgi.com>2006-02-28 12:30:30 +1100
commit2353e8e9b6ae29aad77935f21735a30f5cc419b4 (patch)
tree6c3b2b28e1e33ebe26bf12866dccfdeedaf6ea1e /fs
parentdae81d4774ecbeb7d24bb9a6a4db9f9baee54d85 (diff)
downloadlinux-3.10-2353e8e9b6ae29aad77935f21735a30f5cc419b4.tar.gz
linux-3.10-2353e8e9b6ae29aad77935f21735a30f5cc419b4.tar.bz2
linux-3.10-2353e8e9b6ae29aad77935f21735a30f5cc419b4.zip
[XFS] Don't map non-uptodate buffers in xfs_probe_cluster; also fixes
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>
Diffstat (limited to 'fs')
-rw-r--r--fs/xfs/linux-2.6/xfs_aops.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/xfs/linux-2.6/xfs_aops.c b/fs/xfs/linux-2.6/xfs_aops.c
index 8f2beec526c..74d8be87f98 100644
--- a/fs/xfs/linux-2.6/xfs_aops.c
+++ b/fs/xfs/linux-2.6/xfs_aops.c
@@ -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);