[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] migration: add version supporting macros for st
From: |
Alexey Kardashevskiy |
Subject: |
Re: [Qemu-devel] [PATCH] migration: add version supporting macros for struct pointer |
Date: |
Tue, 24 Sep 2013 15:58:32 +1000 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130805 Thunderbird/17.0.8 |
On 09/04/2013 02:35 PM, Alexey Kardashevskiy wrote:
> This adds version supporting macros VMSTATE_STRUCT_POINTER_TEST_V
> and VMSTATE_STRUCT_POINTER_V in addition to the already existing
> VMSTATE_STRUCT_POINTER and VMSTATE_STRUCT_POINTER_TEST macros.
Ping?
>
> Cc: Andreas Färber <address@hidden>
> Signed-off-by: Alexey Kardashevskiy <address@hidden>
> ---
> include/migration/vmstate.h | 17 +++++++++++++++--
> 1 file changed, 15 insertions(+), 2 deletions(-)
>
> diff --git a/include/migration/vmstate.h b/include/migration/vmstate.h
> index 1c31b5d..9d09e60 100644
> --- a/include/migration/vmstate.h
> +++ b/include/migration/vmstate.h
> @@ -310,8 +310,18 @@ extern const VMStateInfo vmstate_info_bitmap;
> .offset = vmstate_offset_value(_state, _field, _type), \
> }
>
> -#define VMSTATE_STRUCT_POINTER_TEST(_field, _state, _test, _vmsd, _type) { \
> +#define VMSTATE_STRUCT_POINTER_V(_field, _state, _version, _vmsd, _type) { \
> .name = (stringify(_field)), \
> + .version_id = (_version), \
> + .vmsd = &(_vmsd), \
> + .size = sizeof(_type), \
> + .flags = VMS_STRUCT|VMS_POINTER, \
> + .offset = vmstate_offset_value(_state, _field, _type), \
> +}
> +
> +#define VMSTATE_STRUCT_POINTER_TEST_V(_field, _state, _test, _version,
> _vmsd, _type) { \
> + .name = (stringify(_field)), \
> + .version_id = (_version), \
> .field_exists = (_test), \
> .vmsd = &(_vmsd), \
> .size = sizeof(_type), \
> @@ -497,7 +507,10 @@ extern const VMStateInfo vmstate_info_bitmap;
> VMSTATE_STRUCT_TEST(_field, _state, NULL, _version, _vmsd, _type)
>
> #define VMSTATE_STRUCT_POINTER(_field, _state, _vmsd, _type) \
> - VMSTATE_STRUCT_POINTER_TEST(_field, _state, NULL, _vmsd, _type)
> + VMSTATE_STRUCT_POINTER_V(_field, _state, 0, _vmsd, _type)
> +
> +#define VMSTATE_STRUCT_POINTER_TEST(_field, _state, _test, _vmsd, _type)
> \
> + VMSTATE_STRUCT_POINTER_TEST_V(_field, _state, _test, 0, _vmsd, _type)
>
> #define VMSTATE_STRUCT_ARRAY(_field, _state, _num, _version, _vmsd, _type) \
> VMSTATE_STRUCT_ARRAY_TEST(_field, _state, _num, NULL, _version, \
>
--
Alexey