[PATCH 2/9] kexec: add public interface for improved load/unload sub-ops

Jan Beulich JBeulich at suse.com
Fri Sep 13 10:06:36 EDT 2013


>>> On 13.09.13 at 14:37, David Vrabel <david.vrabel at citrix.com> wrote:
> On 13/09/13 11:26, Jan Beulich wrote:
>>>>> On 12.09.13 at 21:49, David Vrabel <david.vrabel at citrix.com> wrote:
>>> +#else /* __XEN_INTERFACE_VERSION__ < 0x00040400 */
>>> +
>>> +#define KEXEC_CMD_kexec_load KEXEC_CMD_kexec_load_v1
>>> +#define KEXEC_CMD_kexec_unload KEXEC_CMD_kexec_unload_v1
>>> +typedef struct xen_kexec_load {
>>> +    int type;
>>> +    xen_kexec_image_t image;
>>> +} xen_kexec_load_t;
>> 
>> Is there anything preventing the use of two #define-s here
>> instead of repeating the declaration (which results in these and
>> the ones with the _v1 tags not being interchangeable)?
> 
> You mean:
> 
> #define xen_kexec_load xen_kexec_load_v1
> #define xen_kexec_load_t xen_kexec_load_v1_t
> 
> I will do that.  I'm not sure I understand your concern about them not
> being interchangeable though.  They do have identical layout.

Yes, but that doesn't mean a pointer to one of them can be
assigned to a variable being a pointer to the other type.

Jan




More information about the kexec mailing list