On 12/10/2016 13:59, Halil Pasic wrote: > IMHO this would: > * allow us to keep the good old MVStateInfo objects unmodified and > the semantic of VMStateInfo unchanged > * make clear that VMStateLinked does not care about the calculated size > and provide a new anchor for documentation > * if overloading the semantic of VMStateField.start is not desired we > could put it into VMStateLinked, if needed we could also put more > stuff in there > * have clearer separation between special handling for (linked/certain) > data structures and the usual scenario with the DAG.
No, I disagree. We shouldn't be worried about making intrusive changes to all invocations or declarations, if that leads to a simpler API. I agree that overloading .start can be a bit ugly but you can choose to overload .num_offset instead, which is already better. > I would also suggest unit tests in test/test-vmstate.c. Maybe with > that the vmstate migration of QTAILQ could be factored out as a separate > patch series. Yes, definitely. Paolo