Commit 28820640 authored by Jens Axboe's avatar Jens Axboe

kyber-iosched: update shallow depth when setting up hardware queue

We don't expect the async depth to be smaller than the wake batch
count for sbitmap, but just in case, inform sbitmap of what shallow
depth kyber may use.
Acked-by: default avatarPaolo Valente <paolo.valente@linaro.org>
Reviewed-by: default avatarOmar Sandoval <osandov@fb.com>
Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 483b7bf2
...@@ -378,6 +378,7 @@ static void kyber_exit_sched(struct elevator_queue *e) ...@@ -378,6 +378,7 @@ static void kyber_exit_sched(struct elevator_queue *e)
static int kyber_init_hctx(struct blk_mq_hw_ctx *hctx, unsigned int hctx_idx) static int kyber_init_hctx(struct blk_mq_hw_ctx *hctx, unsigned int hctx_idx)
{ {
struct kyber_queue_data *kqd = hctx->queue->elevator->elevator_data;
struct kyber_hctx_data *khd; struct kyber_hctx_data *khd;
int i; int i;
...@@ -400,6 +401,8 @@ static int kyber_init_hctx(struct blk_mq_hw_ctx *hctx, unsigned int hctx_idx) ...@@ -400,6 +401,8 @@ static int kyber_init_hctx(struct blk_mq_hw_ctx *hctx, unsigned int hctx_idx)
khd->batching = 0; khd->batching = 0;
hctx->sched_data = khd; hctx->sched_data = khd;
sbitmap_queue_min_shallow_depth(&hctx->sched_tags->bitmap_tags,
kqd->async_depth);
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment