Btrfs: Lookup readpage checksums on bio submission again
This optimization had been removed because I thought it was triggering
csum errors. The real cause of the errors was elsewhere, and so
this optimization is back.
Signed-off-by: Chris Mason <chris.mason@oracle.com>
diff --git a/fs/btrfs/file-item.c b/fs/btrfs/file-item.c
index 9454e0a..f861bd5 100644
--- a/fs/btrfs/file-item.c
+++ b/fs/btrfs/file-item.c
@@ -134,7 +134,6 @@
return ret;
}
-#if 0 /* broken */
int btrfs_lookup_bio_sums(struct btrfs_root *root, struct inode *inode,
struct bio *bio)
{
@@ -151,6 +150,8 @@
struct extent_io_tree *io_tree = &BTRFS_I(inode)->io_tree;
path = btrfs_alloc_path();
+ if (bio->bi_size > PAGE_CACHE_SIZE * 8)
+ path->reada = 2;
WARN_ON(bio->bi_vcnt <= 0);
@@ -211,7 +212,6 @@
btrfs_free_path(path);
return 0;
}
-#endif
int btrfs_csum_one_bio(struct btrfs_root *root, struct inode *inode,
struct bio *bio)