On Fri, Oct 19, 2018 at 9:44 AM, Johannes Thumshirn <jthumshirn@xxxxxxx> wrote: > On 19/10/18 15:36, Bryan Gurney wrote: >> I like this idea. I don't have enough experience to write this patch >> myself, but I imagine something like adding "bool is_zoned_aware" to >> "struct elevator_type", and setting that true only for the schedulers >> that are currently zoned-device aware (which is currently deadline on >> single queue, mq-deadline on blk-mq). > > I don't think this is needed currently as a) Jens is working on getting > rid of the legacy path, Once the legacy schedulers are gone, the default (prior to Linus' proposed patch) will be mq-deadline, which is zoned-device-aware. So the default scheduler will be "safer" for zoned devices. However, it will still be possible for users (or distro defaults) to select a non-zoned-aware scheduler, such as "none", "kyber", or "bfq" (prior to this patch). So there would still be a window for users to encounter the same problems I found when aborted commands start occurring during otherwise normal filesystem or storage activity, by drivers that are otherwise compliant with the handling characteristics of zoned block devices. > which leaves us with mq-deadline only and Linus' > patch has: > > + if (blk_queue_is_zoned(q)) > + policy = "mq-deadline"; > > Which chooses mq-deadline on a zoned device. > > So nothing to worry about here now. > > All this only given Linus' patch actually gets merged. I hope it does get merged. I keep forgetting to save my "zoned devices use deadline" udev rule on my SMR drive test machine in between reinstalls. Thanks, Bryan