[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 11/25] vmstate: factor VMSTATE_*BUFFER* definitions
From: |
Juan Quintela |
Subject: |
[Qemu-devel] [PATCH 11/25] vmstate: factor VMSTATE_*BUFFER* definitions |
Date: |
Mon, 19 Oct 2009 20:42:56 +0200 |
Signed-off-by: Juan Quintela <address@hidden>
---
hw/hw.h | 32 +++++++++++---------------------
1 files changed, 11 insertions(+), 21 deletions(-)
diff --git a/hw/hw.h b/hw/hw.h
index aea50a6..dd065c8 100644
--- a/hw/hw.h
+++ b/hw/hw.h
@@ -458,29 +458,13 @@ extern const VMStateInfo vmstate_info_buffer;
.offset = vmstate_offset_array(_state, _field, _type, _num), \
}
-#define VMSTATE_STATIC_BUFFER(_field, _state, _version) { \
+#define VMSTATE_STATIC_BUFFER(_field, _state, _version, _start, _size) { \
.name = (stringify(_field)), \
.version_id = (_version), \
- .size = sizeof(typeof_field(_state,_field)), \
+ .size = (_size - _start), \
.info = &vmstate_info_buffer, \
.flags = VMS_BUFFER, \
- .offset = vmstate_offset_buffer(_state, _field), \
-}
-
-#define VMSTATE_PARTIAL_BUFFER(_field, _state, _size) { \
- .name = (stringify(_field)), \
- .size = (_size), \
- .info = &vmstate_info_buffer, \
- .flags = VMS_BUFFER, \
- .offset = vmstate_offset_buffer(_state, _field), \
-}
-
-#define VMSTATE_BUFFER_START_MIDDLE(_field, _state, start) { \
- .name = (stringify(_field)), \
- .size = sizeof(typeof_field(_state,_field)) - start, \
- .info = &vmstate_info_buffer, \
- .flags = VMS_BUFFER, \
- .offset = vmstate_offset_buffer(_state, _field) + start, \
+ .offset = vmstate_offset_buffer(_state, _field) + _start, \
}
extern const VMStateDescription vmstate_pci_device;
@@ -622,10 +606,16 @@ extern const VMStateDescription vmstate_i2c_slave;
VMSTATE_INT32_VARRAY_V(_f, _s, _f_n, 0)
#define VMSTATE_BUFFER_V(_f, _s, _v) \
- VMSTATE_STATIC_BUFFER(_f, _s, _v)
+ VMSTATE_STATIC_BUFFER(_f, _s, _v, 0, sizeof(typeof_field(_s, _f)))
#define VMSTATE_BUFFER(_f, _s) \
- VMSTATE_STATIC_BUFFER(_f, _s, 0)
+ VMSTATE_BUFFER_V(_f, _s, 0)
+
+#define VMSTATE_PARTIAL_BUFFER(_f, _s, _size) \
+ VMSTATE_STATIC_BUFFER(_f, _s, 0, 0, _size)
+
+#define VMSTATE_BUFFER_START_MIDDLE(_f, _s, _start) \
+ VMSTATE_STATIC_BUFFER(_f, _s, 0, _start, sizeof(typeof_field(_s, _f)))
#ifdef NEED_CPU_H
#if TARGET_LONG_BITS == 64
--
1.6.2.5
- [Qemu-devel] [PATCH 01/25] vmstate: Add support for partial buffers transmission, (continued)
- [Qemu-devel] [PATCH 01/25] vmstate: Add support for partial buffers transmission, Juan Quintela, 2009/10/19
- [Qemu-devel] [PATCH 03/25] vnmstate: fix name for uint8_equal, Juan Quintela, 2009/10/19
- [Qemu-devel] [PATCH 02/25] serial: use post_load version_id field and remove pre_load function, Juan Quintela, 2009/10/19
- [Qemu-devel] [PATCH 04/25] vmstate: add VMSTATE_UINT16_EQUAL[_V], Juan Quintela, 2009/10/19
- [Qemu-devel] [PATCH 05/25] vmstate: Rename VMS_VARRAY to VMS_VARRAY_INT32, Juan Quintela, 2009/10/19
- [Qemu-devel] [PATCH 06/25] vmstate: fix indentation, Juan Quintela, 2009/10/19
- [Qemu-devel] [PATCH 07/25] vmstate: factor vmstate_offset_value, Juan Quintela, 2009/10/19
- [Qemu-devel] [PATCH 08/25] vmstate: factor vmstate_offset_pointer, Juan Quintela, 2009/10/19
- [Qemu-devel] [PATCH 09/25] vmstate: factor vmstate_offset_array, Juan Quintela, 2009/10/19
- [Qemu-devel] [PATCH 10/25] vmstate: factor vmstate_offset_buffer, Juan Quintela, 2009/10/19
- [Qemu-devel] [PATCH 11/25] vmstate: factor VMSTATE_*BUFFER* definitions,
Juan Quintela <=
- [Qemu-devel] [PATCH 12/25] vmstate: Unfold VMSTATE_INT32_VARRAY() only use and remove it, Juan Quintela, 2009/10/19
- [Qemu-devel] [PATCH 13/25] vmstate: add VMS_VARRAY_UINT16_UNSAFE (varrays with uint16 indexes), Juan Quintela, 2009/10/19
- [Qemu-devel] [PATCH 15/25] vmstate: Add VMSTATE_BUFFER_UNUSED, Juan Quintela, 2009/10/19
- [Qemu-devel] [PATCH 17/25] rtl8139: port TallyCounters to vmstate, Juan Quintela, 2009/10/19
- [Qemu-devel] [PATCH 14/25] vmstate: Add version arg to VMSTATE_SINGLE_TEST(), Juan Quintela, 2009/10/19
- [Qemu-devel] [PATCH 16/25] vmstate: Introduce the concept of sub-arrays, Juan Quintela, 2009/10/19
- [Qemu-devel] [PATCH 19/25] eeprom93xx: port to vmstate, Juan Quintela, 2009/10/19
- [Qemu-devel] [PATCH 21/25] pcnet: port to vmstate, Juan Quintela, 2009/10/19
- [Qemu-devel] [PATCH 18/25] rtl8139: port to vmstate, Juan Quintela, 2009/10/19
- [Qemu-devel] [PATCH 22/25] ne2000: port to vmstate, Juan Quintela, 2009/10/19