|
@@ -2489,13 +2489,13 @@ static int __must_check submit_one_bio(int rw, struct bio *bio,
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
-static int merge_bio(struct extent_io_tree *tree, struct page *page,
|
|
|
+static int merge_bio(int rw, struct extent_io_tree *tree, struct page *page,
|
|
|
unsigned long offset, size_t size, struct bio *bio,
|
|
|
unsigned long bio_flags)
|
|
|
{
|
|
|
int ret = 0;
|
|
|
if (tree->ops && tree->ops->merge_bio_hook)
|
|
|
- ret = tree->ops->merge_bio_hook(page, offset, size, bio,
|
|
|
+ ret = tree->ops->merge_bio_hook(rw, page, offset, size, bio,
|
|
|
bio_flags);
|
|
|
BUG_ON(ret < 0);
|
|
|
return ret;
|
|
@@ -2530,7 +2530,7 @@ static int submit_extent_page(int rw, struct extent_io_tree *tree,
|
|
|
sector;
|
|
|
|
|
|
if (prev_bio_flags != bio_flags || !contig ||
|
|
|
- merge_bio(tree, page, offset, page_size, bio, bio_flags) ||
|
|
|
+ merge_bio(rw, tree, page, offset, page_size, bio, bio_flags) ||
|
|
|
bio_add_page(bio, page, page_size, offset) < page_size) {
|
|
|
ret = submit_one_bio(rw, bio, mirror_num,
|
|
|
prev_bio_flags);
|