qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 15/27] vmstate: Test for VMSTATE_UINT16_TEST


From: Juan Quintela
Subject: [Qemu-devel] [PATCH 15/27] vmstate: Test for VMSTATE_UINT16_TEST
Date: Mon, 16 Jun 2014 11:58:11 +0200

Remove VMSTATE_UINT16_V, we are removing versioning.
Move all users to VMSTATE_UINT16_TEST.
Signed-off-by: Juan Quintela <address@hidden>
---
 hw/char/serial.c            | 2 +-
 hw/net/lan9118.c            | 4 ++--
 include/migration/vmstate.h | 9 +++------
 target-i386/machine.c       | 8 ++++----
 tests/test-vmstate.c        | 7 ++++++-
 5 files changed, 16 insertions(+), 14 deletions(-)

diff --git a/hw/char/serial.c b/hw/char/serial.c
index 4ec0164..681ab46 100644
--- a/hw/char/serial.c
+++ b/hw/char/serial.c
@@ -603,7 +603,7 @@ const VMStateDescription vmstate_serial = {
     .pre_save = serial_pre_save,
     .post_load = serial_post_load,
     .fields = (VMStateField[]) {
-        VMSTATE_UINT16_V(divider, SerialState, 2),
+        VMSTATE_UINT16_TEST(divider, SerialState, vmstate_2_plus),
         VMSTATE_UINT8(rbr, SerialState),
         VMSTATE_UINT8(ier, SerialState),
         VMSTATE_UINT8(iir, SerialState),
diff --git a/hw/net/lan9118.c b/hw/net/lan9118.c
index e528290..fecbf8d 100644
--- a/hw/net/lan9118.c
+++ b/hw/net/lan9118.c
@@ -310,8 +310,8 @@ static const VMStateDescription vmstate_lan9118 = {
         VMSTATE_INT32(rxp_pad, lan9118_state),
         VMSTATE_UINT32_V(write_word_prev_offset, lan9118_state, 2),
         VMSTATE_UINT32_V(write_word_n, lan9118_state, 2),
-        VMSTATE_UINT16_V(write_word_l, lan9118_state, 2),
-        VMSTATE_UINT16_V(write_word_h, lan9118_state, 2),
+        VMSTATE_UINT16_TEST(write_word_l, lan9118_state, vmstate_2_plus),
+        VMSTATE_UINT16_TEST(write_word_h, lan9118_state, vmstate_2_plus),
         VMSTATE_UINT32_V(read_word_prev_offset, lan9118_state, 2),
         VMSTATE_UINT32_V(read_word_n, lan9118_state, 2),
         VMSTATE_UINT32_V(read_long, lan9118_state, 2),
diff --git a/include/migration/vmstate.h b/include/migration/vmstate.h
index b66e540..c2047e7 100644
--- a/include/migration/vmstate.h
+++ b/include/migration/vmstate.h
@@ -549,8 +549,8 @@ extern const VMStateInfo vmstate_info_bitmap;

 #define VMSTATE_UINT8_TEST(_f, _s, _t)                                \
     VMSTATE_SINGLE_TEST(_f, _s, _t, 0, vmstate_info_uint8, uint8_t)
-#define VMSTATE_UINT16_V(_f, _s, _v)                                  \
-    VMSTATE_SINGLE(_f, _s, _v, vmstate_info_uint16, uint16_t)
+#define VMSTATE_UINT16_TEST(_f, _s, _t)                               \
+    VMSTATE_SINGLE_TEST(_f, _s, _t, 0, vmstate_info_uint16, uint16_t)
 #define VMSTATE_UINT32_V(_f, _s, _v)                                  \
     VMSTATE_SINGLE(_f, _s, _v, vmstate_info_uint32, uint32_t)
 #define VMSTATE_UINT64_V(_f, _s, _v)                                  \
@@ -571,7 +571,7 @@ extern const VMStateInfo vmstate_info_bitmap;
 #define VMSTATE_UINT8(_f, _s)                                         \
     VMSTATE_UINT8_TEST(_f, _s, NULL)
 #define VMSTATE_UINT16(_f, _s)                                        \
-    VMSTATE_UINT16_V(_f, _s, 0)
+    VMSTATE_UINT16_TEST(_f, _s, NULL)
 #define VMSTATE_UINT32(_f, _s)                                        \
     VMSTATE_UINT32_V(_f, _s, 0)
 #define VMSTATE_UINT64(_f, _s)                                        \
@@ -604,9 +604,6 @@ extern const VMStateInfo vmstate_info_bitmap;
 #define VMSTATE_INT32_POSITIVE_LE(_f, _s)                             \
     VMSTATE_SINGLE(_f, _s, 0, vmstate_info_int32_le, int32_t)

-#define VMSTATE_UINT16_TEST(_f, _s, _t)                               \
-    VMSTATE_SINGLE_TEST(_f, _s, _t, 0, vmstate_info_uint16, uint16_t)
-
 #define VMSTATE_UINT32_TEST(_f, _s, _t)                                  \
     VMSTATE_SINGLE_TEST(_f, _s, _t, 0, vmstate_info_uint32, uint32_t)

diff --git a/target-i386/machine.c b/target-i386/machine.c
index 8f52c0e..d3deea5 100644
--- a/target-i386/machine.c
+++ b/target-i386/machine.c
@@ -668,10 +668,10 @@ const VMStateDescription vmstate_x86_cpu = {
         VMSTATE_UINT64_V(env.vm_vmcb, X86CPU, 5),
         VMSTATE_UINT64_V(env.tsc_offset, X86CPU, 5),
         VMSTATE_UINT64_V(env.intercept, X86CPU, 5),
-        VMSTATE_UINT16_V(env.intercept_cr_read, X86CPU, 5),
-        VMSTATE_UINT16_V(env.intercept_cr_write, X86CPU, 5),
-        VMSTATE_UINT16_V(env.intercept_dr_read, X86CPU, 5),
-        VMSTATE_UINT16_V(env.intercept_dr_write, X86CPU, 5),
+        VMSTATE_UINT16_TEST(env.intercept_cr_read, X86CPU, vmstate_5_plus),
+        VMSTATE_UINT16_TEST(env.intercept_cr_write, X86CPU, vmstate_5_plus),
+        VMSTATE_UINT16_TEST(env.intercept_dr_read, X86CPU, vmstate_5_plus),
+        VMSTATE_UINT16_TEST(env.intercept_dr_write, X86CPU, vmstate_5_plus),
         VMSTATE_UINT32_V(env.intercept_exceptions, X86CPU, 5),
         VMSTATE_UINT8_TEST(env.v_tpr, X86CPU, vmstate_5_plus),
         /* MTRRs */
diff --git a/tests/test-vmstate.c b/tests/test-vmstate.c
index 8678df4..60dc360 100644
--- a/tests/test-vmstate.c
+++ b/tests/test-vmstate.c
@@ -151,7 +151,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;
+    uint16_t u16_1, u16_2;
     uint32_t u32_1;
     uint64_t u64_1;
     int8_t   i8_1,  i8_2;
@@ -168,6 +168,7 @@ TestSimple obj_simple = {
     .u8_1 = 130,
     .u8_2 = 222,
     .u16_1 = 512,
+    .u16_2 = 666,
     .u32_1 = 70000,
     .u64_1 = 12121212,
     .i8_1 = 65,
@@ -300,6 +301,8 @@ static const VMStateDescription vmstate_simple_test = {
         VMSTATE_INT64_TEST(i64_2, TestSimple, test_false),
         VMSTATE_UINT8_TEST(u8_1, TestSimple, test_true),
         VMSTATE_UINT8_TEST(u8_2, TestSimple, test_false),
+        VMSTATE_UINT16_TEST(u16_1, TestSimple, test_true),
+        VMSTATE_UINT16_TEST(u16_2, TestSimple, test_false),
         VMSTATE_END_OF_LIST()
     }
 };
@@ -311,6 +314,7 @@ uint8_t wire_simple_test[] = {
     /* i32_1 */ 0x00, 0x01, 0x11, 0x70,
     /* i64_1 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xb8, 0xf4, 0x7c,
     /* u8_1 */  0x82,
+    /* u16_1 */ 0x02, 0x00,
     QEMU_VM_EOF, /* just to ensure we won't get EOF reported prematurely */
 };

@@ -333,6 +337,7 @@ static void test_simple_test(void)
     FIELD_EQUAL(i32_1);
     FIELD_EQUAL(i64_1);
     FIELD_EQUAL(u8_1);
+    FIELD_EQUAL(u16_1);
 }
 #undef FIELD_EQUAL

-- 
1.9.3




reply via email to

[Prev in Thread] Current Thread [Next in Thread]