Skip to content

Commit caebce2

Browse files
committed
Revert "block: consider discard merge last"
This reverts commit 2516c24. Suspected issues with discard merging post this patch, hence revert it for now. Link: https://lore.kernel.org/linux-block/26acdfdf-de13-430b-8c73-f890c7689a84@kernel.dk/ Signed-off-by: Jens Axboe <axboe@kernel.dk>
1 parent 935a20d commit caebce2

1 file changed

Lines changed: 6 additions & 6 deletions

File tree

block/blk-merge.c

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -712,10 +712,10 @@ static void blk_account_io_merge_request(struct request *req)
712712
static enum elv_merge blk_try_req_merge(struct request *req,
713713
struct request *next)
714714
{
715-
if (blk_rq_pos(req) + blk_rq_sectors(req) == blk_rq_pos(next))
716-
return ELEVATOR_BACK_MERGE;
717-
else if (blk_discard_mergable(req))
715+
if (blk_discard_mergable(req))
718716
return ELEVATOR_DISCARD_MERGE;
717+
else if (blk_rq_pos(req) + blk_rq_sectors(req) == blk_rq_pos(next))
718+
return ELEVATOR_BACK_MERGE;
719719

720720
return ELEVATOR_NO_MERGE;
721721
}
@@ -903,12 +903,12 @@ bool blk_rq_merge_ok(struct request *rq, struct bio *bio)
903903

904904
enum elv_merge blk_try_merge(struct request *rq, struct bio *bio)
905905
{
906-
if (blk_rq_pos(rq) + blk_rq_sectors(rq) == bio->bi_iter.bi_sector)
906+
if (blk_discard_mergable(rq))
907+
return ELEVATOR_DISCARD_MERGE;
908+
else if (blk_rq_pos(rq) + blk_rq_sectors(rq) == bio->bi_iter.bi_sector)
907909
return ELEVATOR_BACK_MERGE;
908910
else if (blk_rq_pos(rq) - bio_sectors(bio) == bio->bi_iter.bi_sector)
909911
return ELEVATOR_FRONT_MERGE;
910-
else if (blk_discard_mergable(rq))
911-
return ELEVATOR_DISCARD_MERGE;
912912
return ELEVATOR_NO_MERGE;
913913
}
914914

0 commit comments

Comments
 (0)