[PATCH] check bh->b_blocknr only if BH_Mapped is set

From: Nikanth Karthikesan
Date: Mon Feb 09 2009 - 07:20:52 EST


check bh->b_blocknr only if BH_Mapped is set

Signed-off-by: Nikanth Karthikesan <knikanth@xxxxxxx>

---

diff --git a/fs/buffer.c b/fs/buffer.c
index 665d446..782c365 100644
--- a/fs/buffer.c
+++ b/fs/buffer.c
@@ -344,13 +344,13 @@ __find_get_block_slow(struct block_device *bdev,
sector_t block)
head = page_buffers(page);
bh = head;
do {
- if (bh->b_blocknr == block) {
+ if (!buffer_mapped(bh))
+ all_mapped = 0;
+ else if (bh->b_blocknr == block) {
ret = bh;
get_bh(bh);
goto out_unlock;
}
- if (!buffer_mapped(bh))
- all_mapped = 0;
bh = bh->b_this_page;
} while (bh != head);


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/