[SRU][B/aws][PULL] aws: update Xen hibernation patch set
Andrea Righi
andrea.righi at canonical.com
Wed Feb 24 14:38:27 UTC 2021
BugLink: https://bugs.launchpad.net/bugs/1913410
BugLink: https://bugs.launchpad.net/bugs/1906850
[Impact]
Amazon maintains a custom kernel patch set to properly support
hibernation in Xen.
This patch set is available in the amazonlinux kernel git repository:
https://github.com/amazonlinux/linux.git
It is important to periodically re-sync our version of this patch set
with the new versions that are pushed by Amazon and make sure we include
all the required patches and drop the old ones.
This pull request is a revert of the old xen/hibernation patch set +
applying the new patch set.
Many of these patches required a small backporting activity, mostly due
to context adjustments (no functional changes).
[Test case]
A test kernel with this new patch set applied has been extensively
tested in the AWS cloud both by our testing scripts (multiple
hibernation/resume cycles) and by Amazon with positive results.
[Fix]
Revert the old xen/hibernation patch set + apply the new patch set.
[Regression potential]
The following patches are touching respectively nvme, virtio_blk and
block/genhd; this is required to properly support the corresponding
blkio changes made in the xen-blkfront driver:
UBUNTU: SAUCE: drivers/nvme/host/core.c: Convert to use set_capacity_revalidate_and_notify
UBUNTU: SAUCE: drivers/block/virtio_blk.c: Convert to use set_capacity_revalidate_and_notify
UBUNTU: SAUCE: block/genhd: Notify udev about capacity change
Potentially we may see regressions in the block subsystem for these
drivers (specifically the code that handles the capacity change).
All the other changes are touching the Xen (guest) code and hibernation,
so we can only see potential regressions in these subsystems.
--
The following changes since commit 01cc484bcce66678048ed129a28e6fcce23a3713:
UBUNTU: Ubuntu-aws-4.15.0-1094.101 (2021-02-04 06:18:22 -0500)
are available in the Git repository at:
git://git.launchpad.net/~arighi/+git/bionic-linux 7d3f6d53c59cbd7ff7d8db574fefdd88d34dfc07
for you to fetch changes up to 7d3f6d53c59cbd7ff7d8db574fefdd88d34dfc07:
UBUNTU: SAUCE: drivers/nvme/host/core.c: Convert to use set_capacity_revalidate_and_notify (2021-02-24 15:32:19 +0100)
----------------------------------------------------------------
Anchal Agarwal (4):
UBUNTU: SAUCE: x86/xen: Introduce new function to map HYPERVISOR_shared_info on Resume
UBUNTU: SAUCE: Revert "xen: dont fiddle with event channel masking in suspend/resume"
UBUNTU: SAUCE: xen-blkfront: Fixed blkfront_restore to remove a call to negotiate_mq
UBUNTU: SAUCE: xen: Restore xen-pirqs on resume from hibernation
Andrea Righi (18):
Revert "UBUNTU: SAUCE: xen-netfront: prevent unnecessary close on hibernate"
Revert "UBUNTU SAUCE [aws]: xen: Only restore the ACPI SCI interrupt in xen_restore_pirqs."
Revert "UBUNTU SAUCE [aws]: xen: restore pirqs on resume from hibernation."
Revert "UBUNTU SAUCE [aws]: block: xen-blkfront: consider new dom0 features on restore"
Revert "UBUNTU: SAUCE [aws] x86/xen: close event channels for PIRQs in system core suspend callback"
Revert "UBUNTU: SAUCE [aws] xen/events: add xen_shutdown_pirqs helper function"
Revert "UBUNTU: SAUCE [aws] x86/xen: save and restore steal clock"
Revert "UBUNTU: SAUCE [aws] xen-time-introduce-xen_-save-restore-_steal_clock"
Revert "UBUNTU: SAUCE [aws] xen-netfront: add callbacks for PM suspend and hibernation support"
Revert "UBUNTU: SAUCE [aws] x86/xen: add system core suspend and resume callbacks"
Revert "UBUNTU: SAUCE [aws] x86/xen: Introduce new function to map HYPERVISOR_shared_info on Resume"
Revert "UBUNTU: SAUCE: xen-blkfront: Fixed blkfront_restore to remove a call to negotiate_mq"
Revert "UBUNTU: SAUCE: xen-blkfront: resurrect request-based mode"
Revert "UBUNTU: SAUCE: xen-blkfront: add callbacks for PM suspend and hibernation"
Revert "UBUNTU: SAUCE: xenbus: add freeze/thaw/restore callbacks support"
Revert "UBUNTU: SAUCE: xen/manage: introduce helper function to know the on-going suspend mode"
Revert "UBUNTU: SAUCE: xen/manage: keep track of the on-going suspend mode"
UBUNTU: SAUCE: xen-netfront: prevent unnecessary close on hibernate
Anthony Liguori (1):
UBUNTU: SAUCE: xen-blkfront: add 'persistent_grants' parameter
Balbir Singh (4):
UBUNTU: SAUCE: drivers/block/xen-blkfront.c: Convert to use set_capacity_revalidate_and_notify
UBUNTU: SAUCE: block/genhd: Notify udev about capacity change
UBUNTU: SAUCE: drivers/block/virtio_blk.c: Convert to use set_capacity_revalidate_and_notify
UBUNTU: SAUCE: drivers/nvme/host/core.c: Convert to use set_capacity_revalidate_and_notify
Eduardo Valentin (2):
UBUNTU: SAUCE: block: xen-blkfront: consider new dom0 features on restore
UBUNTU: SAUCE: x86: tsc: avoid system instability in hibernation
Frank van der Linden (3):
UBUNTU: SAUCE: xen: restore pirqs on resume from hibernation.
UBUNTU: SAUCE: xen: Only restore the ACPI SCI interrupt in xen_restore_pirqs.
UBUNTU: SAUCE: xen-netfront: call netif_device_attach on resume
Munehisa Kamata (11):
UBUNTU: SAUCE: xen/manage: keep track of the on-going suspend mode
UBUNTU: SAUCE: xen/manage: introduce helper function to know the on-going suspend mode
UBUNTU: SAUCE: xenbus: add freeze/thaw/restore callbacks support
UBUNTU: SAUCE: x86/xen: add system core suspend and resume callbacks
UBUNTU: SAUCE: xen-blkfront: add callbacks for PM suspend and hibernation
UBUNTU: SAUCE: xen-netfront: add callbacks for PM suspend and hibernation support
UBUNTU: SAUCE: xen/time: introduce xen_{save,restore}_steal_clock
UBUNTU: SAUCE: x86/xen: save and restore steal clock
UBUNTU: SAUCE: xen/events: add xen_shutdown_pirqs helper function
UBUNTU: SAUCE: x86/xen: close event channels for PIRQs in system core suspend callback
UBUNTU: SAUCE: xen-blkfront: resurrect request-based mode
Samuel Mendoza-Jonas (1):
UBUNTU: SAUCE: xen-blkfront: Delay flush till queue lock dropped
arch/x86/kernel/tsc.c | 29 +++++++++++++++++++++
arch/x86/xen/enlighten_hvm.c | 6 ++---
arch/x86/xen/suspend.c | 3 +--
block/genhd.c | 24 ++++++++++++++++++
drivers/block/virtio_blk.c | 4 +--
drivers/block/xen-blkfront.c | 46 +++++++++++++++++++++++----------
drivers/net/xen-netfront.c | 18 +++++++++++--
drivers/nvme/host/core.c | 2 +-
drivers/xen/events/events_base.c | 55 ++++++++--------------------------------
include/linux/genhd.h | 2 ++
include/linux/irq.h | 2 ++
include/linux/sched/clock.h | 5 ++++
kernel/irq/chip.c | 4 +--
kernel/sched/clock.c | 4 +--
14 files changed, 131 insertions(+), 73 deletions(-)
More information about the kernel-team
mailing list