[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 22/27] vmstate: Test for VMSTATE_UINT16_EQUAL
From: |
Juan Quintela |
Subject: |
[Qemu-devel] [PATCH 22/27] vmstate: Test for VMSTATE_UINT16_EQUAL |
Date: |
Mon, 16 Jun 2014 11:58:18 +0200 |
We change only user of VMSTATE_UINT16_EQUAL_V to VMSTATE_UINT16_EQUAL_TEST.
Signed-off-by: Juan Quintela <address@hidden>
---
hw/nvram/eeprom93xx.c | 7 ++++++-
include/migration/vmstate.h | 8 ++++----
tests/test-vmstate.c | 8 +++++++-
3 files changed, 17 insertions(+), 6 deletions(-)
diff --git a/hw/nvram/eeprom93xx.c b/hw/nvram/eeprom93xx.c
index 0af4d67..d07bafb 100644
--- a/hw/nvram/eeprom93xx.c
+++ b/hw/nvram/eeprom93xx.c
@@ -121,6 +121,11 @@ static bool is_old_eeprom_version(void *opaque, int
version_id)
return version_id == OLD_EEPROM_VERSION;
}
+static bool is_eeprom_version(void *opaque, int version_id)
+{
+ return version_id == EEPROM_VERSION;
+}
+
static const VMStateDescription vmstate_eeprom = {
.name = "eeprom",
.version_id = EEPROM_VERSION,
@@ -138,7 +143,7 @@ static const VMStateDescription vmstate_eeprom = {
VMSTATE_UINT8(addrbits, eeprom_t),
VMSTATE_UINT16_HACK_TEST(size, eeprom_t, is_old_eeprom_version),
VMSTATE_UNUSED_TEST(is_old_eeprom_version, 1),
- VMSTATE_UINT16_EQUAL_V(size, eeprom_t, EEPROM_VERSION),
+ VMSTATE_UINT16_EQUAL_TEST(size, eeprom_t, is_eeprom_version),
VMSTATE_UINT16(data, eeprom_t),
VMSTATE_VARRAY_UINT16_UNSAFE(contents, eeprom_t, size, 0,
vmstate_info_uint16, uint16_t),
diff --git a/include/migration/vmstate.h b/include/migration/vmstate.h
index b81d5ac..e06a091 100644
--- a/include/migration/vmstate.h
+++ b/include/migration/vmstate.h
@@ -579,11 +579,11 @@ extern const VMStateInfo vmstate_info_bitmap;
#define VMSTATE_UINT8_EQUAL(_f, _s) \
VMSTATE_SINGLE_TEST(_f, _s, NULL, 0, vmstate_info_uint8_equal, uint8_t)
-#define VMSTATE_UINT16_EQUAL(_f, _s) \
- VMSTATE_SINGLE(_f, _s, 0, vmstate_info_uint16_equal, uint16_t)
+#define VMSTATE_UINT16_EQUAL_TEST(_f, _s, _t) \
+ VMSTATE_SINGLE_TEST(_f, _s, _t, 0, vmstate_info_uint16_equal, uint16_t)
-#define VMSTATE_UINT16_EQUAL_V(_f, _s, _v) \
- VMSTATE_SINGLE(_f, _s, _v, vmstate_info_uint16_equal, uint16_t)
+#define VMSTATE_UINT16_EQUAL(_f, _s) \
+ VMSTATE_UINT16_EQUAL_TEST(_f, _s, NULL)
#define VMSTATE_INT32_EQUAL(_f, _s) \
VMSTATE_SINGLE(_f, _s, 0, vmstate_info_int32_equal, int32_t)
diff --git a/tests/test-vmstate.c b/tests/test-vmstate.c
index 0d98bbb..370bea1 100644
--- a/tests/test-vmstate.c
+++ b/tests/test-vmstate.c
@@ -152,7 +152,7 @@ static int load_vmstate(const VMStateDescription *desc,
typedef struct TestSimple {
bool b_1, b_2;
uint8_t u8_1, u8_2;
- uint16_t u16_1, u16_2;
+ uint16_t u16_1, u16_2, u16_3;
uint32_t u32_1, u32_2;
uint64_t u64_1, u64_2;
int8_t i8_1, i8_2;
@@ -171,6 +171,7 @@ TestSimple obj_simple = {
.u8_2 = 222,
.u16_1 = 512,
.u16_2 = 666,
+ .u16_3 = 513,
.u32_1 = 70000,
.u32_2 = 88888,
.u64_1 = 12121212,
@@ -368,12 +369,17 @@ static const VMStateDescription vmstate_simple_compare = {
.minimum_version_id_old = 1,
.fields = (VMStateField[]) {
VMSTATE_UINT8_EQUAL(u8_1, TestSimple),
+ VMSTATE_UINT16_EQUAL(u16_1, TestSimple),
+ VMSTATE_UINT16_EQUAL_TEST(u16_2, TestSimple, test_false),
+ VMSTATE_UINT16_EQUAL_TEST(u16_3, TestSimple, test_true),
VMSTATE_END_OF_LIST()
}
};
uint8_t wire_simple_compare[] = {
/* u8_1 */ 0x82,
+ /* u16_1 */ 0x02, 0x00,
+ /* u16_3 */ 0x02, 0x01,
QEMU_VM_EOF, /* just to ensure we won't get EOF reported prematurely */
};
--
1.9.3
- [Qemu-devel] [PATCH 09/27] vmstate: Test for VMSTATE_BOOL_TEST, (continued)
- [Qemu-devel] [PATCH 09/27] vmstate: Test for VMSTATE_BOOL_TEST, Juan Quintela, 2014/06/16
- [Qemu-devel] [PATCH 13/27] vmstate: test for VMSTATE_INT64_TEST, Juan Quintela, 2014/06/16
- [Qemu-devel] [PATCH 12/27] vmstate: Test for VMSTATE_INT32_TEST, Juan Quintela, 2014/06/16
- [Qemu-devel] [PATCH 14/27] vmstate: Test for VMSTATE_UINT8_TEST, Juan Quintela, 2014/06/16
- [Qemu-devel] [PATCH 16/27] vmstate: Test for VMSTATE_UINT32_TEST, Juan Quintela, 2014/06/16
- [Qemu-devel] [PATCH 15/27] vmstate: Test for VMSTATE_UINT16_TEST, Juan Quintela, 2014/06/16
- [Qemu-devel] [PATCH 17/27] vmstate: Test for VMSTATE_UINT64_TEST, Juan Quintela, 2014/06/16
- [Qemu-devel] [PATCH 18/27] vmstate: Test for VMSTATE_FLOAT64, Juan Quintela, 2014/06/16
- [Qemu-devel] [PATCH 19/27] vmstate: Test for VMSTATE_UNUSED, Juan Quintela, 2014/06/16
- [Qemu-devel] [PATCH 21/27] vmstate: Test for VMSTATE_UINT8_EQUAL, Juan Quintela, 2014/06/16
- [Qemu-devel] [PATCH 22/27] vmstate: Test for VMSTATE_UINT16_EQUAL,
Juan Quintela <=
- [Qemu-devel] [PATCH 20/27] vmstate: Test for VMSTATE_BITMAP, Juan Quintela, 2014/06/16
- [Qemu-devel] [PATCH 23/27] vmstate: Test for VMSTATE_UINT32_EQUAL, Juan Quintela, 2014/06/16
- [Qemu-devel] [PATCH 24/27] vmstate: Test for VMSTATE_UINT64_EQUAL, Juan Quintela, 2014/06/16
- [Qemu-devel] [PATCH 25/27] vmstate: Test for VMSTATE_INT32_EQUAL, Juan Quintela, 2014/06/16
- [Qemu-devel] [PATCH 26/27] vmstate: Test for VMSTATE_INT32_LE, Juan Quintela, 2014/06/16
- [Qemu-devel] [PATCH 27/27] vmstate: s/VMSTATE_INT32_LE/VMSTATE_INT32_POSITIVE_LE/, Juan Quintela, 2014/06/16