diff options
author | Jens Axboe <axboe@fb.com> | 2016-01-08 09:00:29 -0700 |
---|---|---|
committer | Jens Axboe <axboe@fb.com> | 2016-01-08 09:00:29 -0700 |
commit | 6126eb2483a8398329e662eaff5f103e832ed5cb (patch) | |
tree | ab2490784ee923ff6b702e80143382489191ddb9 /block/blk-merge.c | |
parent | 02006f7a7a715af10974a30b7ad8e6ee340f954c (diff) | |
download | lwn-6126eb2483a8398329e662eaff5f103e832ed5cb.tar.gz lwn-6126eb2483a8398329e662eaff5f103e832ed5cb.zip |
Revert "block: Split bios on chunk boundaries"
This reverts commit d3805611130af9b911e908af9f67a3f64f4f0914.
If we end up splitting on the first segment, we don't adjust
the sector count. That results in hitting a BUG() with attempting
to split 0 sectors.
As this is just a performance issue and not a regression since
4.3 release, let's just rever this change. That gives us more
time to test a real fix for 4.5, which would be marked for
stable anyway.
Diffstat (limited to 'block/blk-merge.c')
-rw-r--r-- | block/blk-merge.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/block/blk-merge.c b/block/blk-merge.c index e73846a3d08a..e01405a3e8b3 100644 --- a/block/blk-merge.c +++ b/block/blk-merge.c @@ -81,7 +81,7 @@ static struct bio *blk_bio_segment_split(struct request_queue *q, struct bio *new = NULL; bio_for_each_segment(bv, bio, iter) { - if (sectors + (bv.bv_len >> 9) > blk_max_size_offset(q, bio->bi_iter.bi_sector)) + if (sectors + (bv.bv_len >> 9) > queue_max_sectors(q)) goto split; /* |