[Xen-devel] [PATCH 3/8] kexec: add public interface for improved load/unload sub-ops
Jan Beulich
JBeulich at suse.com
Fri Feb 22 08:09:57 EST 2013
>>> On 22.02.13 at 12:50, David Vrabel <david.vrabel at citrix.com> wrote:
> On 22/02/13 08:33, Jan Beulich wrote:
>>>>> On 21.02.13 at 18:48, David Vrabel <david.vrabel at citrix.com> wrote:
>>> --- a/xen/include/public/kexec.h
>>> +++ b/xen/include/public/kexec.h
>>> @@ -116,12 +116,12 @@ typedef struct xen_kexec_exec {
>>> * type == KEXEC_TYPE_DEFAULT or KEXEC_TYPE_CRASH [in]
>>> * image == relocation information for kexec (ignored for unload) [in]
>>> */
>>> -#define KEXEC_CMD_kexec_load 1
>>> -#define KEXEC_CMD_kexec_unload 2
>>> -typedef struct xen_kexec_load {
>>> +#define KEXEC_CMD_kexec_load_v1 1 /* obsolete since 0x00040300 */
>>> +#define KEXEC_CMD_kexec_unload_v1 2 /* obsolete since 0x00040300 */
>>> +typedef struct xen_kexec_load_v1 {
>>> int type;
>>> xen_kexec_image_t image;
>>> -} xen_kexec_load_t;
>>> +} xen_kexec_load_v1_t;
>>
>> You can't change type names like this without also guarding them
>> with a __XEN_INTERFACE_VERSION__ conditional or providing
>> backward compatibility #define-s.
>
> There are backward compatible definitions provided at the end of the
> header file.
There's a typedef producing xen_kexec_load_t, but there's no
way for a consumer to use struct xen_kexec_load afaics.
Jan
More information about the kexec
mailing list