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: 2017-01-20 14:28:35
Also in: lkml

On Fri, Jan 20 2017, 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.
Jens,
no spin_lock_irq* in the code.  So, also request dispatches are
guaranteed to never be executed in IRQ context?  I'm asking this
question to understand whether I'm missing something that, even in
BFQ, would somehow allow me to not disable irqs in critical sections,
even if there is the slice_idle-expiration handler.  Be patient with
my ignorance.
Yes, dispatches will never happen from IRQ context. blk-mq was designed
so we didn't have to use irq disabling locks.

That said, certain parts of the API can be called from IRQ context.
put_request and the completion parts, for instance. But blk-mq doesn't
need to grab any locks there, and neither does mq-deadline. This might
be different from bfq. lockdep can be a big help there.

-- 
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