On 08/07/2012 10:10 AM, Peter Crosthwaite wrote:
+
+extern const VMStateDescription vmstate_fifo8;
+
+#define VMSTATE_FIFO8(_field, _state) { \
+ .name = (stringify(_field)), \
+ .size = sizeof(Fifo8), \
+ .vmsd = &vmstate_fifo8, \
+ .flags = VMS_STRUCT, \
+ .offset = vmstate_offset_value(_state, _field, Fifo8), \
+}
how about implementing this as a wrapper to VMSTATE_STRUCT_TEST() macro
instead?
This has no existing precedent in QEMU so I am unsure of what you mean?
I meant VMSTATE_TIMER_TEST() in vmstate.h as an example, which is a
wrapper to VMSTATE_POINTER_TEST(). With this approach, fifo macro could be
#define VMSTATE_FIFO8(_field, _state) \
VMSTATE_STRUCT(_field, _state, 0, vmstate_fifo8, Fifo8)
And maybe this should go to vmstate.h header
I disagree. All other clients of VMS_STRUCT are out in their repective
device specific headers (pci.h, i2c.h) etc. Unless this is new
established policy, I dont really want to change the current adopted
approach.
Yeah, looks like you're right.
Regards,
Peter
+
+#endif /* FIFO_H */