Re: [PATCH 7/8] mq-deadline: add blk-mq adaptation of the deadline IO scheduler
From: Jens Axboe <axboe@fb.com>
Date: 2016-12-20 15:46:51
Also in:
lkml
From: Jens Axboe <axboe@fb.com>
Date: 2016-12-20 15:46:51
Also in:
lkml
On 12/20/2016 02:34 AM, Paolo Valente wrote:
quoted
Il giorno 17 dic 2016, alle ore 01:12, Jens Axboe [off-list ref] ha scritto: This is basically identical to deadline-iosched, except it registers as a MQ capable scheduler. This is still a single queue design. Signed-off-by: Jens Axboe <axboe@fb.com> ... + +static bool dd_has_work(struct blk_mq_hw_ctx *hctx) +{ + struct deadline_data *dd = hctx->queue->elevator->elevator_data; + + return !list_empty_careful(&dd->dispatch) || + !list_empty_careful(&dd->fifo_list[0]) || + !list_empty_careful(&dd->fifo_list[1]);Just a request for clarification: if I'm not mistaken, list_empty_careful can be used safely only if the only possible other concurrent access is a delete. Or am I missing something?
We can "solve" that with memory barriers. For now, it's safe to ignore on your end. -- Jens Axboe