On Wed, 2013-01-16 at 16:29 +0000, David Vrabel wrote:
> 
> +/*
> + * Load a kexec image into memory.
> + *
> + * Each segment of the image must reside in the memory region reserved
> + * for kexec (KEXEC_RANGE_MA_CRASH) and the entry point must be within
> + * the image.
> + *
> + * The caller is responsible for ensuring that multiple images do not
> + * overlap.
> + */
> +#define KEXEC_CMD_kexec_load_v2        4
> +typedef struct xen_kexec_load_v2 {
> +    uint8_t type;  /* One of KEXEC_TYPE_* */
> +    uint8_t class; /* One of KEXEC_CLASS_* */
> +    uint32_t nr_segments;
> +    XEN_GUEST_HANDLE(xen_kexec_segment_t) segments;
> +    uint64_t entry_maddr; /* image entry point machine address. */
> +} xen_kexec_load_v2_t;
> +DEFINE_XEN_GUEST_HANDLE(xen_kexec_load_v2_t); 

Might you want to implement the double buffering scheme which the
existing stuff has? This can avoid windows where there is no complete
crash kernel present while you load a new one.

Ian.


_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec

Reply via email to