On Wed, Oct 3, 2018 at 9:42 AM Damien Le Moal <Damien.LeMoal@xxxxxxx> wrote: > There is another class of outliers: host-managed SMR disks (SATA and SCSI, > definitely single hw queue). For these, using mq-deadline is mandatory in many > cases in order to guarantee sequential write command delivery to the device > driver. Having the default changed to bfq, which as far as I know is not SMR > friendly (can sequential writes within a single zone be reordered ?) is asking > for troubles (unaligned write errors showing up). Ah, that is interesting. Which device driver files are we talking about here, specifically? I'd like to take a look. I guess what you say is not that you are looking for the deadline scheduling per se (as in deadline scheduling is nice), what you want is the zone locking semantics in that scheduler, is that right? I.e. this business: blk_queue_is_zoned(q) blk_req_zone_write_lock(rq); blk_req_zone_write_unlock(rq); and mq-deadline solves this with a spinlock. I will augment the patch to enforce mq-deadline if blk_queue_is_zoned(q) is true, as it is clear that any device with that characteristic must use mq-deadline. Paoly might be interested in looking into whether BFQ could also handle zoned devices in the future, I have no idea of how hard that would be. The zoned business seems a bit fragile. Should it even be allowed to select any other scheduler than deadline on these devices? Presenting all compiled in schedulers in /sysblock/device/queue/scheduler sounds like just giving sysadmins too much rope. Yours, Linus Walleij