On Thu, 2018-06-14 at 08:38 -0400, Mike Snitzer wrote: > On Wed, Jun 13 2018 at 8:11pm -0400, > Luis R. Rodriguez <mcg...@kernel.org> wrote: > > 1) scheduler setup > > This is wrong.. if zoned devices are so dependent on deadline or > mq-deadline then the kernel should allow them to be hardcoded. I know > Jens removed the API to do so but the fact that drivers need to rely on > hacks like this udev rule to get a functional device is proof we need to > allow drivers to impose the scheduler used.
Hello Mike, As you know the Linux kernel block layer stack can reorder requests. However, for zoned block devices it is essential that the block device receives write requests in the same order as these were submitted by the (user space) application or by the (kernel) filesystem. After a long debate the choice was made to make I/O schedulers responsible for guaranteeing to preserve the write order. Today only the deadline scheduler guarantees that the write order is preserved. Hence the udev rule that sets the deadline scheduler for zoned block devices. Bart.