On Sat, 2017-08-05 at 14:56 +0800, Ming Lei wrote:
> + /*
> + * if there is q->queue_depth, all hw queues share
> + * this queue depth limit
> + */
> + if (q->queue_depth) {
> + queue_for_each_hw_ctx(q, hctx, i)
> + hctx->flags |= BLK_MQ_F_SHARED_DEPTH;
> + }
> +
> + if (!q->elevator)
> + goto exit;
Hello Ming,
It seems very fragile to me to set BLK_MQ_F_SHARED_DEPTH if and only if
q->queue_depth != 0. Wouldn't it be better to let the block driver tell the
block layer whether or not there is a queue depth limit across hardware
queues, e.g. through a tag set flag?
Thanks,
Bart.