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. David