Message ID | 20230516223323.1383342-7-bvanassche@acm.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | mq-deadline: Improve support for zoned block devices | expand |
On 5/17/23 00:33, Bart Van Assche wrote: > Make the deadline_skip_seq_writes() code shorter without changing its > functionality. > > Reviewed-by: Damien Le Moal <dlemoal@kernel.org> > Reviewed-by: Christoph Hellwig <hch@lst.de> > Cc: Ming Lei <ming.lei@redhat.com> > Signed-off-by: Bart Van Assche <bvanassche@acm.org> > --- > 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 a016cafa54b3..6276afede9cd 100644 > --- a/block/mq-deadline.c > +++ b/block/mq-deadline.c > @@ -304,14 +304,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; > } Description could be improved (you're not changing the functionality, you are changing the implementation), but anyway: Reviewed-by: Hannes Reinecke <hare@suse.de> Cheers, Hannes
diff --git a/block/mq-deadline.c b/block/mq-deadline.c index a016cafa54b3..6276afede9cd 100644 --- a/block/mq-deadline.c +++ b/block/mq-deadline.c @@ -304,14 +304,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; }