Difference between revisions of "Live-Updating Xen"

From Xen
(More information)
(Current State)
Line 5: Line 5:
 
* kexec work merged for v2.0.20
 
* kexec work merged for v2.0.20
 
* PV domU serialization work ongoing
 
* PV domU serialization work ongoing
  +
  +
Initial proof-of-concept (no kexec):
  +
  +
Save a PV domain state, leave guest memory in the RAM:
  +
# xl save -s domU domU.img
  +
  +
Restore domain state reusing magic mfns. The shared_info page contents are preserved:
  +
# xl restore -T domain.img <l3tab_mfn> <l2tab_mfn> <shared_info_mfn>
  +
  +
TODO: Restore console, reconstruct guest pagetables from shared_info.
   
 
== TODO ==
 
== TODO ==

Revision as of 13:44, 10 July 2019

Live-Updating Xen

Current State

  • kexec work merged for v2.0.20
  • PV domU serialization work ongoing
Initial proof-of-concept (no kexec):

Save a PV domain state, leave guest memory in the RAM:
# xl save -s domU domU.img 

Restore domain state reusing magic mfns. The shared_info page contents are preserved:
# xl restore -T domain.img <l3tab_mfn> <l2tab_mfn> <shared_info_mfn>

TODO: Restore console, reconstruct guest pagetables from shared_info.

TODO

This list will move to the JIRA instance

  • Devel milestone: PV domU persists across domain destroy/create
  • Dom0 persists across kexec
  • HVM guests persist across kexec
  • PV guests persist across kexec
  • One guest persists across kexec
  • Multiple guests persist across kexec
  • Guests exercise workloads
  • Update to same Xen binary as the Target Xen
  • Update to a Xen binary with a minor change, like a new printk
  • Update to a Xen binary with a fix for an XSA
  • Update to a new minor version
  • Update to a new major version

More information

  • Slides from Xen Summit 2019
  • Video recording of the Xen Summit 2019 talk
  • Development trees:

http://git.infradead.org/users/dwmw2/xen.git/shortlog/refs/heads/bootcleanup

https://github.com/varadgautam/xen/tree/liveupdate-devel