From 9a3b2e646883f976b02c71fcd08bc289a6e31705 Mon Sep 17 00:00:00 2001 From: Bart Van Assche Date: Wed, 17 May 2023 10:42:25 -0700 Subject: [PATCH] FROMGIT: block: mq-deadline: Simplify deadline_skip_seq_writes() Make the deadline_skip_seq_writes() code shorter without changing its functionality. Reviewed-by: Damien Le Moal Reviewed-by: Christoph Hellwig Reviewed-by: Hannes Reinecke Cc: Ming Lei Change-Id: I3d6fa65ccf9af3bc54742acf2ca2a67bd6b13dc1 Signed-off-by: Bart Van Assche Link: https://lore.kernel.org/r/20230517174230.897144-8-bvanassche@acm.org Signed-off-by: Jens Axboe Bug: 275581839 (cherry picked from commit 3b463cbea908a9c8d4b9eda09765070506864cbe https://git.kernel.dk/cgit/linux/) Signed-off-by: Bart Van Assche --- block/mq-deadline.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/block/mq-deadline.c b/block/mq-deadline.c index 8a4694619bcf..a92142128acb 100644 --- a/block/mq-deadline.c +++ b/block/mq-deadline.c @@ -306,14 +306,11 @@ static struct request *deadline_skip_seq_writes(struct deadline_data *dd, struct request *rq) { sector_t pos = blk_rq_pos(rq); - sector_t skipped_sectors = 0; - while (rq) { - if (blk_rq_pos(rq) != pos + skipped_sectors) - break; - skipped_sectors += blk_rq_sectors(rq); + do { + pos += blk_rq_sectors(rq); rq = deadline_latter_request(rq); - } + } while (rq && blk_rq_pos(rq) == pos); return rq; }