[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [MINI-OS PATCH 00/19] Make Xenstore-stubdom live update possible
With this series applied I was able to perform Live Update of Xenstore running in a PVH stubdom. The main problem to solve was to keep the 9pfs device used to store and later retrieve the Xenstore state usable across kexec(). This has been achieved by using a module containing the shared pages of the device and the related config data. This module is then passed to the new kernel via linking it to the struct hvm_start_info. The rest of the series are some missing bits and pieces to have a sane state when activating the new kernel, and some minor fixes and cleanups. In order to be able to perform a Xenstore live update an associated patch series for Xen is needed. The Xen series is depending on this Mini-OS patch series. Juergen Gross (19): setup: add global pointer for struct hvm_start_info mini-os: kexec: add O_CLOEXEC support mini-os: grants: support populated grant table at boot time: unbind VIRQ_TIMER across kexec mm: refactor init_page_allocator() mm: don't add module pages to free memory kexec: fix physical addresses in start info data e820: don't count lapic page as initially reserved kexec: restructure building the start info data e820: use special type for software reserved memory mini-os: config: add support for config items with numerical values mini-os: kexec: add support for handing over some memory across kexec kexec: add support for allocating pages from kexec module memory 9pfs: store bepath in struct struct dev_9pfs 9pfs: refactor init_9pfront() gnttab: remove gnttab_alloc_and_grant() function gnttab: add function to obtain memory address from grantref 9pfs: add support to keep device opened across kexec events: export bind_evtchn() 9pfront.c | 267 +++++++++++++++++++++++++++++++----------- Config.mk | 6 + arch/x86/kexec.c | 113 ++++++++++++++++-- arch/x86/mm.c | 98 ++++++++++++++++ arch/x86/setup.c | 48 +++++++- arch/x86/time.c | 14 +++ e820.c | 11 +- events.c | 1 + gnttab.c | 21 ++-- include/9pfront.h | 9 ++ include/e820.h | 2 + include/fcntl.h | 6 + include/gnttab.h | 2 +- include/hypervisor.h | 3 + include/kernel.h | 1 + include/kexec.h | 98 ++++++++++++++++ include/lib.h | 1 + include/mm.h | 4 + include/x86/arch_mm.h | 1 + kexec.c | 118 +++++++++++++++++++ lib/sys.c | 44 ++++++- mm.c | 134 +++++++++++++-------- 22 files changed, 858 insertions(+), 144 deletions(-) -- 2.43.0
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |