Christoph, On 5/30/18 17:47, Christoph Hellwig wrote: > On Wed, May 30, 2018 at 06:22:04AM +0000, Damien Le Moal wrote: >> That would necessitate splitting elevator_init() into a generic elevator >> initialization function setting up the elevator related fields of the >> request queue and a second part setting up the default elevator (e.g. >> elevator_set_default()). Doing so, the function elevator_set_default() >> could be called later in the device initialization sequence, after >> information from the device has been obtained. It would make choosing a >> sane default elevator much cleaner. > > For blk-mq this makes entirely sense, untested series here: > > http://git.infradead.org/users/hch/block.git/shortlog/refs/heads/elevator_init Just reviewed and tried the series. Looks OK to me. Feel free to post adding: Reviewed-by: Damien Le Moal <damien.lemoal@xxxxxxx> Tested-by: Damien Le Moal <damien.lemoal@xxxxxxx> > For the legacy case we always need at least some I/O scheduler, > so we can't just defer it. But I think we could still switch to > deadline in blk_register_queue if we found a zoned device. Arrg... Yes, I forgot that. At least noop would be needed. So no real point in changing anything I guess. For the switch to deadline once the device is identified as zoned, I would like to see that added. Jens decision on this though. Best. -- Damien Le Moal, Western Digital