Re: [PATCH v3 7/8] block, bfq: remove unnecessary goto tag in bfq_dispatch_rq_from_bfqq

From: Jan Kara
Date: Tue Jan 03 2023 - 04:44:54 EST


On Tue 03-01-23 17:53:02, Kemeng Shi wrote:
> We jump to tag only for returning current rq. Return directly to
> remove this tag.
>
> Signed-off-by: Kemeng Shi <shikemeng@xxxxxxxxxxxxxxx>

Looks good to me. Feel free to add:

Reviewed-by: Jan Kara <jack@xxxxxxx>

Honza

> ---
> block/bfq-iosched.c | 9 +++------
> 1 file changed, 3 insertions(+), 6 deletions(-)
>
> diff --git a/block/bfq-iosched.c b/block/bfq-iosched.c
> index 9ff424c78e9b..a11be312ac77 100644
> --- a/block/bfq-iosched.c
> +++ b/block/bfq-iosched.c
> @@ -4966,7 +4966,7 @@ static struct request *bfq_dispatch_rq_from_bfqq(struct bfq_data *bfqd,
> bfq_dispatch_remove(bfqd->queue, rq);
>
> if (bfqq != bfqd->in_service_queue)
> - goto return_rq;
> + return rq;
>
> /*
> * If weight raising has to terminate for bfqq, then next
> @@ -4986,12 +4986,9 @@ static struct request *bfq_dispatch_rq_from_bfqq(struct bfq_data *bfqd,
> * belongs to CLASS_IDLE and other queues are waiting for
> * service.
> */
> - if (!(bfq_tot_busy_queues(bfqd) > 1 && bfq_class_idle(bfqq)))
> - goto return_rq;
> + if (bfq_tot_busy_queues(bfqd) > 1 && bfq_class_idle(bfqq))
> + bfq_bfqq_expire(bfqd, bfqq, false, BFQQE_BUDGET_EXHAUSTED);
>
> - bfq_bfqq_expire(bfqd, bfqq, false, BFQQE_BUDGET_EXHAUSTED);
> -
> -return_rq:
> return rq;
> }
>
> --
> 2.30.0
>
--
Jan Kara <jack@xxxxxxxx>
SUSE Labs, CR