[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ae644260-2290-021f-24dc-4379766a4603@fb.com>
Date: Tue, 20 Dec 2016 08:46:19 -0700
From: Jens Axboe <axboe@...com>
To: Paolo Valente <paolo.valente@...aro.org>
CC: Jens Axboe <axboe@...nel.dk>, <linux-block@...r.kernel.org>,
Linux-Kernal <linux-kernel@...r.kernel.org>, <osandov@...com>
Subject: Re: [PATCH 7/8] mq-deadline: add blk-mq adaptation of the deadline IO
scheduler
On 12/20/2016 02:34 AM, Paolo Valente wrote:
>
>> Il giorno 17 dic 2016, alle ore 01:12, Jens Axboe <axboe@...com> 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@...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
Powered by blists - more mailing lists