xen hibernation support for linux-aws

Bug #1732512 reported by Kamal Mostafa on 2017-11-15
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux-aws (Ubuntu)
Undecided
Kamal Mostafa
Trusty
Undecided
Kamal Mostafa
Xenial
Undecided
Kamal Mostafa

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

CVE References

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
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
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
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers