On Sat, Jul 13, 2019 at 03:53:28PM -0600, Jens Axboe wrote: > On 7/12/19 9:52 PM, Marcos Paulo de Souza wrote: > > Since the inclusion of blk-mq, elevator= kernel argument was not being > > considered anymore, making it impossible to specify a specific elevator > > at boot time as it was used before. > > > > This is done by checking chosen_elevator global variable, which is > > populated once elevator= kernel argument is passed. Without this patch, > > mq-deadline is the only elevator that is can be used at boot time. > > > > Signed-off-by: Marcos Paulo de Souza <marcos.souza.org@xxxxxxxxx> > > --- > > > > I found this issue while inspecting why noop scheduler was gone, and > > so I found that was now impossible to use a scheduler different from > > mq-deadeline. > > > > Am I missing something? Is this a desirable behavior? > > Just google, I'm sure 2-3 discussions on this topic will come up. > > tldr is that the original parameter was a mistake and doesn't work at > all for multiple devices. Today it's even worse, as we have device > types that won't even work properly with any scheduler, liked the > zoned devices. The parameter was never enabled for blk-mq because of > that, and hence died when the legacy IO path was scrapped. It's not > coming back. Thanks Jens. So it makes sense to remove all leftover code of elevator argument with some dead documentation about it, avoiding confusion about it in the future again. I will send some patches tomorrow. > > -- > Jens Axboe >