lkml.org 
[lkml]   [2021]   [Sep]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.10 031/306] block: bfq: fix bfq_set_next_ioprio_data()
    Date
    From: Damien Le Moal <damien.lemoal@wdc.com>

    commit a680dd72ec336b81511e3bff48efac6dbfa563e7 upstream.

    For a request that has a priority level equal to or larger than
    IOPRIO_BE_NR, bfq_set_next_ioprio_data() prints a critical warning but
    defaults to setting the request new_ioprio field to IOPRIO_BE_NR. This
    is not consistent with the warning and the allowed values for priority
    levels. Fix this by setting the request new_ioprio field to
    IOPRIO_BE_NR - 1, the lowest priority level allowed.

    Cc: <stable@vger.kernel.org>
    Fixes: aee69d78dec0 ("block, bfq: introduce the BFQ-v0 I/O scheduler as an extra scheduler")
    Signed-off-by: Damien Le Moal <damien.lemoal@wdc.com>
    Reviewed-by: Hannes Reinecke <hare@suse.de>
    Link: https://lore.kernel.org/r/20210811033702.368488-2-damien.lemoal@wdc.com
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    block/bfq-iosched.c | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    --- a/block/bfq-iosched.c
    +++ b/block/bfq-iosched.c
    @@ -5011,7 +5011,7 @@ bfq_set_next_ioprio_data(struct bfq_queu
    if (bfqq->new_ioprio >= IOPRIO_BE_NR) {
    pr_crit("bfq_set_next_ioprio_data: new_ioprio %d\n",
    bfqq->new_ioprio);
    - bfqq->new_ioprio = IOPRIO_BE_NR;
    + bfqq->new_ioprio = IOPRIO_BE_NR - 1;
    }

    bfqq->entity.new_weight = bfq_ioprio_to_weight(bfqq->new_ioprio);

    \
     
     \ /
      Last update: 2021-09-16 18:06    [W:3.211 / U:0.332 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site