[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH RFC 2/2] xen/kexec: Reserve KEXEC_TYPE_LIVEUPDATE and KEXEC_RANGE_MA_LIVEUPDATE
On 06/05/2021 11:42, Julien Grall wrote: From: Julien Grall <jgrall@xxxxxxxxxx> Unfortunately, the code to support Live Update has already been merged in Kexec and shipped since 2.0.21. Reserve the IDs used by Kexec before they end up to be re-used for a different purpose. This patch reserves two IDs: * KEXEC_TYPE_LIVEUPDATE: New operation to request Live Update * KEXEC_MA_RANGE_LIVEUPDATE: New range to query the Live Update area below Xen Signed-off-by: Julien Grall <jgrall@xxxxxxxxxx> Reviewed-by: Paul Durrant <paul@xxxxxxx> --- xen/include/public/kexec.h | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/xen/include/public/kexec.h b/xen/include/public/kexec.h index 3f2a118381ba..650d2feb036f 100644 --- a/xen/include/public/kexec.h +++ b/xen/include/public/kexec.h @@ -71,17 +71,22 @@ *//*- * Kexec supports two types of operation: + * Kexec supports three types of operation: * - kexec into a regular kernel, very similar to a standard reboot * - KEXEC_TYPE_DEFAULT is used to specify this type * - kexec into a special "crash kernel", aka kexec-on-panic * - KEXEC_TYPE_CRASH is used to specify this type * - parts of our system may be broken at kexec-on-panic time * - the code should be kept as simple and self-contained as possible + * - Live update into a new Xen, preserving all running domains + * - KEXEC_TYPE_LIVE_UPDATE is used to specify this type + * - Xen performs non-cooperative live migration and stores live + * update state in memory, passing it to the new Xen. */-#define KEXEC_TYPE_DEFAULT 0-#define KEXEC_TYPE_CRASH 1 +#define KEXEC_TYPE_DEFAULT 0 +#define KEXEC_TYPE_CRASH 1 +#define KEXEC_TYPE_LIVEUPDATE 2/* The kexec implementation for Xen allows the user to load two@@ -150,6 +155,8 @@ typedef struct xen_kexec_load_v1 { #define KEXEC_RANGE_MA_EFI_MEMMAP 5 /* machine address and size of * of the EFI Memory Map */ #define KEXEC_RANGE_MA_VMCOREINFO 6 /* machine address and size of vmcoreinfo */ +/* machine address and size of the Live Update area below Xen */ +#define KEXEC_RANGE_MA_LIVEUPDATE 7/** Find the address and size of certain memory areas
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |