Thread (72 messages) 72 messages, 4 authors, 2017-02-16

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

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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help