Loading drivers/md/bcache/io.c +4 −5 Original line number Diff line number Diff line Loading @@ -158,8 +158,10 @@ static unsigned bch_bio_max_sectors(struct bio *bio) { unsigned ret = bio_sectors(bio); struct request_queue *q = bdev_get_queue(bio->bi_bdev); unsigned max_segments = min_t(unsigned, BIO_MAX_PAGES, queue_max_segments(q)); struct bio_vec *bv, *end = bio_iovec(bio) + min_t(int, bio_segments(bio), queue_max_segments(q)); min_t(int, bio_segments(bio), max_segments); struct bvec_merge_data bvm = { .bi_bdev = bio->bi_bdev, Loading @@ -171,7 +173,7 @@ static unsigned bch_bio_max_sectors(struct bio *bio) if (bio->bi_rw & REQ_DISCARD) return min(ret, q->limits.max_discard_sectors); if (bio_segments(bio) > queue_max_segments(q) || if (bio_segments(bio) > max_segments || q->merge_bvec_fn) { ret = 0; Loading @@ -183,9 +185,6 @@ static unsigned bch_bio_max_sectors(struct bio *bio) ret += bv->bv_len >> 9; bvm.bi_size += bv->bv_len; } if (ret >= (BIO_MAX_PAGES * PAGE_SIZE) >> 9) return (BIO_MAX_PAGES * PAGE_SIZE) >> 9; } ret = min(ret, queue_max_sectors(q)); Loading Loading
drivers/md/bcache/io.c +4 −5 Original line number Diff line number Diff line Loading @@ -158,8 +158,10 @@ static unsigned bch_bio_max_sectors(struct bio *bio) { unsigned ret = bio_sectors(bio); struct request_queue *q = bdev_get_queue(bio->bi_bdev); unsigned max_segments = min_t(unsigned, BIO_MAX_PAGES, queue_max_segments(q)); struct bio_vec *bv, *end = bio_iovec(bio) + min_t(int, bio_segments(bio), queue_max_segments(q)); min_t(int, bio_segments(bio), max_segments); struct bvec_merge_data bvm = { .bi_bdev = bio->bi_bdev, Loading @@ -171,7 +173,7 @@ static unsigned bch_bio_max_sectors(struct bio *bio) if (bio->bi_rw & REQ_DISCARD) return min(ret, q->limits.max_discard_sectors); if (bio_segments(bio) > queue_max_segments(q) || if (bio_segments(bio) > max_segments || q->merge_bvec_fn) { ret = 0; Loading @@ -183,9 +185,6 @@ static unsigned bch_bio_max_sectors(struct bio *bio) ret += bv->bv_len >> 9; bvm.bi_size += bv->bv_len; } if (ret >= (BIO_MAX_PAGES * PAGE_SIZE) >> 9) return (BIO_MAX_PAGES * PAGE_SIZE) >> 9; } ret = min(ret, queue_max_sectors(q)); Loading