> >>>   What is the purpose of subsections?
> >>
> >> To skip the new fields whenever possible. That would allow to continue
> >> saving a vmstate on a new version of qemu and then restoring it on an
> >> older one.
> >
> >   Do you have an idea how to implement "needed" function for my case?
> > Because I think, these fields should always be saved and loaded, because
> > they are related to the main state of the interface, not the kind of
> > optional substate.
> 
> E.g., if the fifo is empty, you do not need to save its content. That
> would be one part of the condition. Go through all fields and check if
> they have states that could be ignored or if they could be ignored if
> other already saved fields have specific values. If you find any new
> field that must always be restored, let us discuss it. It may turn out
> that a substate is unrealistic, then we need to go with a new version.

  You mean, if FIFO is empty an will not be saved, we will have to clear
it before loading every time?
  So there should be multiple subsections for every possible field?
  E.g. timers are saved only if they are pending, thr_ipending is saved
only when it is nonzero, and so on. Do you mean that?
  
Pavel Dovgaluk


Reply via email to