[SRU cosmic-aws][PATCH 0/6] LP: #1801305: xen-blkfront: restore request mode

Daniel Axtens daniel.axtens at canonical.com
Fri Nov 2 08:57:26 UTC 2018

In current Ubuntu kernels, PV blkfront drivers have blk-mq enabled by
default and cannot use the old I/O scheduler.

blk-mq is not as fast as the old request-based scheduler for some
workloads on HDD disks.

Amazon Linux has a commit which reintroduces the request-based
mode. It disables blk-mq by default but allows it to be switched back
on with a kernel parameter.

For X this needs a small patch from upstream for error handling.

For B/C this patchset is bigger as it includes the suspend/resume
patches already in X, and a new fixup. These are desirable as the
request mode patch assumes their presence.

[Regression Potential]
Could potentially break xen based disks on AWS.

For B/C, the patches also add some code to the xen core around suspend
and resume, this code is much smaller and also mirrors code already in

Tested by AWS for Xenial, and their kernel engineers vetted the Xenial
patches. I tested the Bionic and Cosmic patchsets with fio, the system
appears stable and the IOPS promised for EBS Provisioned IOPS disks
were met in my testing. I did an apt update/upgrade and everything
worked (no hash-sum mismatches).

Anchal Agarwal (1):
  xen-blkfront: Fixed blkfront_restore to remove a call to negotiate_mq

Munehisa Kamata (5):
  xen/manage: keep track of the on-going suspend mode
  xen/manage: introduce helper function to know the on-going suspend
  xenbus: add freeze/thaw/restore callbacks support
  xen-blkfront: add callbacks for PM suspend and hibernation
  xen-blkfront: resurrect request-based mode

 drivers/block/xen-blkfront.c      | 475 ++++++++++++++++++++++++++----
 drivers/xen/manage.c              |  73 +++++
 drivers/xen/xenbus/xenbus_probe.c | 102 ++++++-
 include/xen/xen-ops.h             |   4 +
 include/xen/xenbus.h              |   3 +
 5 files changed, 576 insertions(+), 81 deletions(-)


More information about the kernel-team mailing list