xen hibernation support for linux-aws

Bug #1732512 reported by Kamal Mostafa
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux-aws (Ubuntu)
Fix Released
Undecided
Kamal Mostafa
Trusty
Fix Released
Undecided
Kamal Mostafa
Xenial
Fix Released
Undecided
Kamal Mostafa
Groovy
Fix Released
Medium
Unassigned

Bug Description

linux-aws needs multiple commits from mainline and Amazon Linux to support xen hibernation:

UBUNTU: aws: [Config] disable SUSPEND
UBUNTU: aws: [Config] disable XEN_FBDEV_FRONTEND,
xen: move xen_setup_runstate_info and get_runstate_snapshot to
    (cherry picked from commit 4ccefbe597392d2914cf7ad904e33c734972681d)
xen/time: use READ_ONCE
    (cherry picked from commit 2dd887e32175b624375570a0361083eb2cd64a07)
xen: add steal_clock support on x86
    (back-ported from commit ecb23dc6f2eff0ce64dd60351a81f376f13b12cc)
xen: support runqueue steal time on xen
    (cherry picked from commit 6ba286ad845799b135e5af73d1fbc838fa79f709)
x86/xen: use xen_vcpu_id mapping for HYPERVISOR_vcpu_op
    (cherry picked from commit ad5475f9faf5186b7f59de2c6481ee3e211f1ed7)
xen: add static initialization of steal_clock op to xen_time_ops
    (cherry picked from commit d34c30cc1fa80f509500ff192ea6bc7d30671061)
x86/xen: update cpuid.h from Xen-4.7
    (cherry picked from commit de2f5537b397249e91cafcbed4de64a24818542e)
x86/acpi: store ACPI ids from MADT for future usage
    (cherry picked from commit 3e9e57fad3d8530aa30787f861c710f598ddc4e7)
xen: introduce xen_vcpu_id mapping
    (back-ported from commit 88e957d6e47f1232ad15b21e54a44f1147ea8c1b)
xen: update xen headers
    (cherry picked from commit 7ba8dba95cb227eb6c270b1aa77f942e45f5e47c)
xen: change the type of xen_vcpu_id to uint32_t
    (cherry picked from commit 55467dea2967259f21f4f854fc99d39cc5fea60e)
xen/blkfront: separate per ring information out of device info
    (cherry picked from commit 81f351615772365d46ceeac3e50c9dd4e8f9dc89)
xen/blkfront: pseudo support for multi hardware queues/rings
    (cherry picked from commit 3df0e5059908b8fdba351c4b5dd77caadd95a949)
xen/blkfront: split per device io_lock
    (cherry picked from commit 11659569f7202d0cb6553e81f9b8aa04dfeb94ce)
xen/blkfront: negotiate number of queues/rings to be used with
    (cherry picked from commit 28d949bcc28bbc2d206f9c3f69b892575e81c040)
xen/blkfront: Cleanup of comments, fix unaligned variables, and
    (cherry picked from commit 6f03a7ff89485f0a7a559bf5c7631d2986c4ecfa)
xen/blkfront: Remove duplicate setting of ->xbdev.
    (cherry picked from commit 75f070b3967b0c3bf0e1bc43411b06bab6c2c2cd)
xen/blkfront: make persistent grants pool per-queue
    (cherry picked from commit 73716df7da4f60dd2d59a9302227d0394f1b8fcc)
xen/blkfront: correct setting for xen_blkif_max_ring_order
    (cherry picked from commit 45fc82642e54018740a25444d1165901501b601b)
xen/blkfront: realloc ring info in blkif_resume
    (cherry picked from commit 3db70a853202c252a8ebefa71ccb088ad149cdd2)
blk-mq: dynamic h/w context count
    (back-ported from commit 868f2f0b72068a097508b6e8870a8950fd8eb7ef)
xen-blkfront: save uncompleted reqs in blkfront_resume()
    (cherry picked from commit 7b427a59538a98161321aa46c13f4ea81b43f4eb)
xen-blkfront: fix places not updated after introducing 64KB page
    (cherry picked from commit 6c647b0eb01cd7326dca093590f5e123e3c68b9c)
blk-mq: mark request queue as mq asap
    (cherry picked from commit 66841672161efb9e3be4a1dbd9755020bb1d86b7)
blk-mq: Fix NULL pointer updating nr_requests
    (cherry picked from commit e9137d4b93078b6a9965acfb18a2a2ad91cf8405)
xen-blkfront: fix resume issues after a migration
    (cherry picked from commit 2a6f71ad99cabe436e70c3f5fcf58072cb3bc07f)
xen-blkfront: introduce blkif_set_queue_limits()
    (back-ported from commit 172335ada40ce26806e514c83a504b45c14a4139)
xen/pvhvm: run xen_vcpu_setup() for the boot CPU
    (cherry picked from commit ee42d665d3f5db975caf87baf101a57235ddb566)
UBUNTU: SAUCE: [aws] xen/manage: keep track of the on-going suspend
UBUNTU: SAUCE: [aws] xen/manage: introduce helper function to know
UBUNTU: SAUCE: [aws] xenbus: add freeze/thaw/restore callbacks
UBUNTU: SAUCE: [aws] x86/xen: decouple shared_info mapping from
UBUNTU: SAUCE: [aws] x86/xen: add system core suspend and resume
UBUNTU: SAUCE: [aws] xen/time: introduce
UBUNTU: SAUCE: [aws] x86/xen: save and restore steal clock
UBUNTU: SAUCE: [aws] xen/events: add xen_shutdown_pirqs helper
UBUNTU: SAUCE: [aws] x86/xen: close event channels for PIRQs in
UBUNTU: SAUCE: [aws] xen-netfront: add callbacks for PM suspend and
UBUNTU: SAUCE: [aws] xen-blkfront: add callbacks for PM suspend and
UBUNTU: SAUCE: [aws] x86/xen: handle CPU_UP_PREPARE_FROZEN for PM
UBUNTU: SAUCE: [aws] xen-netfront: add longer default freeze timeout
UBUNTU: SAUCE: [aws] PM / hibernate: update the resume offset on

Revision history for this message
Kamal Mostafa (kamalmostafa) wrote :

A test kernel with the indicated patch set has received positive smoke test results from Amazon and myself:

git://git.launchpad.net/~kamalmostafa/ubuntu/+source/linux/+git/linux-aws hib

Changed in linux-aws (Ubuntu Trusty):
status: New → In Progress
assignee: nobody → Kamal Mostafa (kamalmostafa)
Changed in linux-aws (Ubuntu Xenial):
status: New → Fix Committed
assignee: nobody → Kamal Mostafa (kamalmostafa)
Changed in linux-aws (Ubuntu Trusty):
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (18.4 KiB)

This bug was fixed in the package linux-aws - 4.4.0-1041.50

---------------
linux-aws (4.4.0-1041.50) xenial; urgency=low

  * linux-aws: 4.4.0-1041.50 -proposed tracker (LP: #1732535)

  * xen hibernation support for linux-aws (LP: #1732512)
    - aws: [Config] disable SUSPEND
    - aws: [Config] disable XEN_FBDEV_FRONTEND, INPUT_XEN_KBDDEV_FRONTEND
    - xen: move xen_setup_runstate_info and get_runstate_snapshot to
      drivers/xen/time.c
    - xen/time: use READ_ONCE
    - xen: add steal_clock support on x86
    - xen: support runqueue steal time on xen
    - xen: introduce xen_vcpu_id mapping
    - x86/xen: use xen_vcpu_id mapping for HYPERVISOR_vcpu_op
    - xen: add static initialization of steal_clock op to xen_time_ops
    - x86/xen: update cpuid.h from Xen-4.7
    - x86/acpi: store ACPI ids from MADT for future usage
    - xen: update xen headers
    - xen: change the type of xen_vcpu_id to uint32_t
    - xen/blkfront: separate per ring information out of device info
    - xen/blkfront: pseudo support for multi hardware queues/rings
    - xen/blkfront: split per device io_lock
    - xen/blkfront: negotiate number of queues/rings to be used with backend
    - xen/blkfront: Cleanup of comments, fix unaligned variables, and syntax
      errors.
    - xen/blkfront: Remove duplicate setting of ->xbdev.
    - xen/blkfront: make persistent grants pool per-queue
    - xen/blkfront: correct setting for xen_blkif_max_ring_order
    - xen/blkfront: realloc ring info in blkif_resume
    - blk-mq: dynamic h/w context count
    - xen-blkfront: save uncompleted reqs in blkfront_resume()
    - xen-blkfront: fix places not updated after introducing 64KB page granularity
    - blk-mq: mark request queue as mq asap
    - blk-mq: Fix NULL pointer updating nr_requests
    - xen-blkfront: fix resume issues after a migration
    - xen-blkfront: introduce blkif_set_queue_limits()
    - xen/pvhvm: run xen_vcpu_setup() for the boot CPU
    - SAUCE: [aws] xen/manage: keep track of the on-going suspend mode
    - SAUCE: [aws] xen/manage: introduce helper function to know the on-going
      suspend mode
    - SAUCE: [aws] xenbus: add freeze/thaw/restore callbacks support
    - SAUCE: [aws] x86/xen: decouple shared_info mapping from
      xen_hvm_init_shared_info()
    - SAUCE: [aws] x86/xen: add system core suspend and resume callbacks
    - SAUCE: [aws] xen/time: introduce xen_{save,restore}_steal_clock
    - SAUCE: [aws] x86/xen: save and restore steal clock
    - SAUCE: [aws] xen/events: add xen_shutdown_pirqs helper function
    - SAUCE: [aws] x86/xen: close event channels for PIRQs in system core suspend
      callback
    - SAUCE: [aws] xen-netfront: add callbacks for PM suspend and hibernation
      support
    - SAUCE: [aws] xen-blkfront: add callbacks for PM suspend and hibernation
      support
    - SAUCE: [aws] x86/xen: handle CPU_UP_PREPARE_FROZEN for PM
      suspend/hibernation
    - SAUCE: [aws] xen-netfront: add longer default freeze timeout as a module
      parameter
    - SAUCE: [aws] PM / hibernate: update the resume offset on
      SNAPSHOT_SET_SWAP_AREA

  * Switch Vcs-Git: url to fully expanded form (LP: #1730648)
    - [Config] Change...

Changed in linux-aws (Ubuntu Xenial):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (12.9 KiB)

This bug was fixed in the package linux-aws - 4.4.0-1005.5

---------------
linux-aws (4.4.0-1005.5) trusty; urgency=low

  * linux-aws: 4.4.0-1005.5 -proposed tracker (LP: #1736182)

  * Update config with NET_DSA=n as required by changes in
     upstream stable update to 4.4.98 (LP: #1732698)

  [ Ubuntu: 4.4.0-103.126 ]

  * linux: 4.4.0-103.126 -proposed tracker (LP: #1736181)
  * CVE-2017-1000405
    - mm, thp: Do not make page table dirty unconditionally in touch_p[mu]d()
  * CVE-2017-16939
    - netlink: add a start callback for starting a netlink dump
    - ipsec: Fix aborted xfrm policy dump crash

  [ Ubuntu: 4.4.0-102.125 ]

  * linux: 4.4.0-102.125 -proposed tracker (LP: #1733541)
  * tar -x sometimes fails on overlayfs (LP: #1728489)
    - ovl: check if all layers are on the same fs
    - ovl: persistent inode number for directories
  * NVMe timeout is too short (LP: #1729119)
    - nvme: update timeout module parameter type
  * Set PANIC_TIMEOUT=10 on Power Systems (LP: #1730660)
    - [Config]: Set PANIC_TIMEOUT=10 on ppc64el
  * Cannot pair BLE remote devices when using combo BT SoC (LP: #1731467)
    - Bluetooth: increase timeout for le auto connections
  * CIFS errors on 4.4.0-98, but not on 4.4.0-97 with same config (LP: #1729337)
    - SMB3: Validate negotiate request must always be signed
  * Plantronics P610 does not support sample rate reading (LP: #1719853)
    - ALSA: usb-audio: Add sample rate quirk for Plantronics P610
  * Invalid btree pointer causes the kernel NULL pointer dereference
    (LP: #1729256)
    - xfs: reinit btree pointer on attr tree inactivation walk
  * Samba mount/umount in docker container triggers kernel Oops (LP: #1729637)
    - ipv6: only call ip6_route_dev_notify() once for NETDEV_UNREGISTER
    - ipv6: fix NULL dereference in ip6_route_dev_notify()
  * [kernel] tty/hvc: Use opal irqchip interface if available (LP: #1728098)
    - tty/hvc: Use opal irqchip interface if available
  * Device hotplugging with MPT SAS cannot work for VMWare ESXi (LP: #1730852)
    - scsi: mptsas: Fixup device hotplug for VMWare ESXi
  * NMI watchdog: BUG: soft lockup on Guest upon boot (KVM) (LP: #1727331)
    - KVM: PPC: Book3S: Treat VTB as a per-subcore register, not per-thread
  * Attempt to map rbd image from ceph jewel/luminous hangs (LP: #1728739)
    - crush: ensure bucket id is valid before indexing buckets array
    - crush: ensure take bucket value is valid
    - crush: add chooseleaf_stable tunable
    - crush: decode and initialize chooseleaf_stable
    - libceph: advertise support for TUNABLES5
    - libceph: MOSDOpReply v7 encoding
  * Xenial update to 4.4.98 stable release (LP: #1732698)
    - adv7604: Initialize drive strength to default when using DT
    - video: fbdev: pmag-ba-fb: Remove bad `__init' annotation
    - PCI: mvebu: Handle changes to the bridge windows while enabled
    - xen/netback: set default upper limit of tx/rx queues to 8
    - drm: drm_minor_register(): Clean up debugfs on failure
    - KVM: PPC: Book 3S: XICS: correct the real mode ICP rejecting counter
    - iommu/arm-smmu-v3: Clear prior settings when updating STEs
    - powerpc/corenet: explicitly disable the SDHC contr...

Changed in linux-aws (Ubuntu Trusty):
status: Fix Committed → Fix Released
Stefan Bader (smb)
Changed in linux-aws (Ubuntu Groovy):
importance: Undecided → Medium
status: New → In Progress
Changed in linux-aws (Ubuntu Groovy):
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (52.4 KiB)

This bug was fixed in the package linux-aws - 5.8.0-1014.15

---------------
linux-aws (5.8.0-1014.15) groovy; urgency=medium

  * groovy/linux-aws: 5.8.0-1014.15 -proposed tracker (LP: #1903182)

  * Groovy update: v5.8.15 upstream stable release (LP: #1902130)
    - [Packaging] [aws] module ocelot_board rename

  * AWS: add the nitro_enclaves driver (LP: #1903087)
    - [Config][aws] update config for NITRO_ENCLAVES
    - nitro_enclaves: Add ioctl interface definition
    - nitro_enclaves: Define the PCI device interface
    - nitro_enclaves: Define enclave info for internal bookkeeping
    - nitro_enclaves: Init PCI device driver
    - nitro_enclaves: Handle PCI device command requests
    - nitro_enclaves: Handle out-of-band PCI device events
    - nitro_enclaves: Init misc device providing the ioctl interface
    - nitro_enclaves: Add logic for creating an enclave VM
    - nitro_enclaves: Add logic for setting an enclave vCPU
    - nitro_enclaves: Add logic for getting the enclave image load info
    - nitro_enclaves: Add logic for setting an enclave memory region
    - nitro_enclaves: Add logic for starting an enclave
    - nitro_enclaves: Add logic for terminating an enclave
    - nitro_enclaves: Add Kconfig for the Nitro Enclaves driver
    - nitro_enclaves: Add Makefile for the Nitro Enclaves driver
    - nitro_enclaves: Add sample for ioctl interface usage
    - nitro_enclaves: Add overview documentation
    - MAINTAINERS: Add entry for the Nitro Enclaves driver

  * aws: improve hibernation reliability in groovy (LP: #1902926)
    - [Config] [aws] disable CONFIG_INPUT_XEN_KBDDEV_FRONTEND
    - [Config] [aws] disable CONFIG_XEN_BALLOON on amd64
    - [Config] [aws] enforce CONFIG_XEN_NETDEV_FRONTEND
    - [Config] [aws] remove all sound-related modules

  * xen hibernation support for linux-aws (LP: #1732512)
    - [Config] [aws] make sure CONFIG_SUSPEND is disabled
    - [Config] [aws] disable CONFIG_XEN_FBDEV_FRONTEND

  * aws: disable CONFIG_DMA_CMA (LP: #1879711)
    - [Config] [aws] make sure CONFIG_FB_HYPERV is disabled

  * aws: update patch to batch hibernate and resume IO requests (LP: #1902864)
    - Revert "UBUNTU: SAUCE: [aws] PM / hibernate: Speed up hibernation by
      batching requests"
    - PM: hibernate: Batch hibernate and resume IO requests

  * aws: disable strict IOMMU TLB invalidation by default (LP: #1902281)
    - SAUCE: [aws] iommu: set the default iommu-dma mode as non-strict

  [ Ubuntu: 5.8.0-30.32 ]

  * groovy/linux: 5.8.0-30.32 -proposed tracker (LP: #1903194)
  * Update kernel packaging to support forward porting kernels (LP: #1902957)
    - [Debian] Update for leader included in BACKPORT_SUFFIX
  * Avoid double newline when running insertchanges (LP: #1903293)
    - [Packaging] insertchanges: avoid double newline
  * EFI: Fails when BootCurrent entry does not exist (LP: #1899993)
    - efivarfs: Replace invalid slashes with exclamation marks in dentries.
  * raid10: Block discard is very slow, causing severe delays for mkfs and
    fstrim operations (LP: #1896578)
    - md: add md_submit_discard_bio() for submitting discard bio
    - md/raid10: extend r10bio devs to raid disks
    - md/raid10: pull...

Changed in linux-aws (Ubuntu Groovy):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package linux-aws - 5.8.0-1018.20+21.04.1

---------------
linux-aws (5.8.0-1018.20+21.04.1) hirsute; urgency=medium

  * Packaging resync (LP: #1786013)
    - update dkms package versions

  [ Ubuntu: 5.8.0-1018.20 ]

  * debian/scripts/file-downloader does not handle positive failures correctly
    (LP: #1878897)
    - [Packaging] file-downloader not handling positive failures correctly
  * Packaging resync (LP: #1786013)
    - update dkms package versions
  * CVE-2021-1052 // CVE-2021-1053
    - [Packaging] NVIDIA -- Add the NVIDIA 460 driver

 -- Thadeu Lima de Souza Cascardo <email address hidden> Thu, 07 Jan 2021 10:47:22 -0300

Changed in linux-aws (Ubuntu):
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.