lkml.org 
[lkml]   [2020]   [Apr]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [PATCH v2 2/2] blk-mq: Rerun dispatching in the case of budget contention
    Hi,

    On Sun, Apr 5, 2020 at 2:15 AM Ming Lei <ming.lei@redhat.com> wrote:
    >
    > @@ -103,6 +104,9 @@ static void blk_mq_do_dispatch_sched(struct blk_mq_hw_ctx *hctx)
    > rq = e->type->ops.dispatch_request(hctx);
    > if (!rq) {
    > blk_mq_put_dispatch_budget(hctx);
    > +
    > + if (e->type->ops.has_work && e->type->ops.has_work(hctx))
    > + blk_mq_delay_run_hw_queue(hctx, BLK_MQ_BUDGET_DELAY);

    To really close the race, don't we need to run all the queues
    associated with the hctx? I haven't traced it through, but I've been
    assuming that the multiple "hctx"s associated with the same queue will
    have the same budget associated with them and thus they can block each
    other out.

    -Doug

    \
     
     \ /
      Last update: 2020-04-05 18:28    [W:8.480 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site