Pavel Dovgalyuk <pavel.dovga...@ispras.ru> writes: > Saving icount as a parameters of the snapshot allows navigation between > them in the execution replay scenario. > This information can be used for finding a specific snapshot for rewinding > the recorded execution to the specific moment of the time. > E.g., 'reverse step' action needs to load the nearest snapshot which is > prior to the current moment of time . > > Signed-off-by: Pavel Dovgalyuk <pavel.dovga...@ispras.ru> > > -- > > v2: > - made icount in SnapshotInfo optional (suggested by Eric Blake) > v7: > - added more comments for icount member (suggested by Markus Armbruster) > v9: > - updated icount comment > --- [...] > diff --git a/qapi/block-core.json b/qapi/block-core.json > index 762000f..a197e5f 100644 > --- a/qapi/block-core.json > +++ b/qapi/block-core.json > @@ -26,13 +26,19 @@ > # > # @vm-clock-nsec: fractional part in nano seconds to be used with > vm-clock-sec > # > +# @icount: Current instruction count. Appears when execution record/replay > +# is enabled. Used for "time-traveling" to match the moment > +# in the recorded execution with the snapshots. This counter may > +# be obtained through @query-replay command (since 4.0)
query-replay appears only in PATCH 11. Please delay the last sentence until then. > +# > # Since: 1.3 > # > ## > { 'struct': 'SnapshotInfo', > 'data': { 'id': 'str', 'name': 'str', 'vm-state-size': 'int', > 'date-sec': 'int', 'date-nsec': 'int', > - 'vm-clock-sec': 'int', 'vm-clock-nsec': 'int' } } > + 'vm-clock-sec': 'int', 'vm-clock-nsec': 'int', > + '*icount': 'int' } } > > ## > # @ImageInfoSpecificQCow2EncryptionBase: > diff --git a/qapi/block.json b/qapi/block.json > index 11f01f2..a6396a9 100644 > --- a/qapi/block.json > +++ b/qapi/block.json > @@ -176,7 +176,8 @@ > # "date-sec": 1000012, > # "date-nsec": 10, > # "vm-clock-sec": 100, > -# "vm-clock-nsec": 20 > +# "vm-clock-nsec": 20, > +# "icount": 220414 > # } > # } > #