Passing in a pointer almost never helps. Convert it to pass in struct for further refactoring on VMS_ARRAY_OF_POINTER.
Signed-off-by: Peter Xu <[email protected]> --- include/hw/intc/riscv_aclint.h | 6 +++--- include/migration/vmstate.h | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/include/hw/intc/riscv_aclint.h b/include/hw/intc/riscv_aclint.h index 5310615cbf..0e0b98acb0 100644 --- a/include/hw/intc/riscv_aclint.h +++ b/include/hw/intc/riscv_aclint.h @@ -80,8 +80,8 @@ enum { RISCV_ACLINT_SWI_SIZE = 0x4000 }; -#define VMSTATE_TIMER_PTR_VARRAY(_f, _s, _f_n) \ -VMSTATE_VARRAY_OF_POINTER_UINT32(_f, _s, _f_n, 0, vmstate_info_timer, \ - QEMUTimer *) +#define VMSTATE_TIMER_PTR_VARRAY(_f, _s, _f_n) \ + VMSTATE_VARRAY_OF_POINTER_UINT32(_f, _s, _f_n, 0, vmstate_info_timer, \ + QEMUTimer) #endif diff --git a/include/migration/vmstate.h b/include/migration/vmstate.h index 8992fba57d..68fd954411 100644 --- a/include/migration/vmstate.h +++ b/include/migration/vmstate.h @@ -567,9 +567,9 @@ extern const VMStateInfo vmstate_info_qlist; .version_id = (_version), \ .num_offset = vmstate_offset_value(_state, _field_num, uint32_t), \ .info = &(_info), \ - .size = sizeof(_type), \ + .size = sizeof(_type *), \ .flags = VMS_VARRAY_UINT32 | VMS_ARRAY_OF_POINTER | VMS_POINTER, \ - .offset = vmstate_offset_pointer(_state, _field, _type), \ + .offset = vmstate_offset_pointer(_state, _field, _type *), \ } #define VMSTATE_STRUCT_SUB_ARRAY(_field, _state, _start, _num, _version, _vmsd, _type) { \ -- 2.50.1
