Pavel Dovgalyuk <pavel.dovga...@ispras.ru> writes: > This patch adds replay.json file. It will be > used for adding record/replay-related data structures and commands. > > Signed-off-by: Pavel Dovgalyuk <pavel.dovga...@ispras.ru> > --- > MAINTAINERS | 1 + > Makefile.objs | 4 ++-- > include/sysemu/replay.h | 1 + > qapi/misc.json | 18 ------------------ > qapi/qapi-schema.json | 1 + > qapi/replay.json | 26 ++++++++++++++++++++++++++ > 6 files changed, 31 insertions(+), 20 deletions(-) > create mode 100644 qapi/replay.json > > diff --git a/MAINTAINERS b/MAINTAINERS > index 0bfd95a..7b0a1bc 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -2122,6 +2122,7 @@ F: net/filter-replay.c > F: include/sysemu/replay.h > F: docs/replay.txt > F: stubs/replay.c > +F: qapi/replay.json > > IOVA Tree > M: Peter Xu <pet...@redhat.com> > diff --git a/Makefile.objs b/Makefile.objs > index 4561159..8164b22 100644 > --- a/Makefile.objs > +++ b/Makefile.objs > @@ -1,6 +1,6 @@ > QAPI_MODULES = block-core block char common crypto introspect job migration > -QAPI_MODULES += misc net rdma rocker run-state sockets tpm trace transaction > -QAPI_MODULES += ui > +QAPI_MODULES += misc net rdma replay rocker run-state sockets tpm trace > +QAPI_MODULES += transaction ui > > ####################################################################### > # Common libraries for tools and emulators > diff --git a/include/sysemu/replay.h b/include/sysemu/replay.h > index b3f593f..2054296 100644 > --- a/include/sysemu/replay.h > +++ b/include/sysemu/replay.h > @@ -13,6 +13,7 @@ > */ > > #include "sysemu.h" > +#include "qapi/qapi-types-replay.h" > #include "qapi/qapi-types-misc.h"
I believe you can drop qapi/qapi-types-misc.h now. > #include "qapi/qapi-types-ui.h" > > diff --git a/qapi/misc.json b/qapi/misc.json > index 24d20a8..e5e0bea 100644 > --- a/qapi/misc.json > +++ b/qapi/misc.json > @@ -3125,24 +3125,6 @@ > 'data': { 'offset': 'int' } } > > ## > -# @ReplayMode: > -# > -# Mode of the replay subsystem. > -# > -# @none: normal execution mode. Replay or record are not enabled. > -# > -# @record: record mode. All non-deterministic data is written into the > -# replay log. > -# > -# @play: replay mode. Non-deterministic data required for system execution > -# is read from the log. > -# > -# Since: 2.5 > -## > -{ 'enum': 'ReplayMode', > - 'data': [ 'none', 'record', 'play' ] } > - > -## > # @xen-load-devices-state: > # > # Load the state of all devices from file. The RAM and the block devices > diff --git a/qapi/qapi-schema.json b/qapi/qapi-schema.json > index 3bbdfce..b85fd04 100644 > --- a/qapi/qapi-schema.json > +++ b/qapi/qapi-schema.json > @@ -95,3 +95,4 @@ # Documentation generated with qapi-gen.py is in source order, with # included sub-schemas inserted at the first include directive # (subsequent include directives have no effect). To get a sane and # stable order, it's best to include each sub-schema just once, or # include it first right here. [...] > { 'include': 'trace.json' } > { 'include': 'introspect.json' } > { 'include': 'misc.json' } > +{ 'include': 'replay.json' } I doubt this the best spot for replay stuff in the generated documentation. Is there another chapter you'd consider related? > diff --git a/qapi/replay.json b/qapi/replay.json > new file mode 100644 > index 0000000..9e13551 > --- /dev/null > +++ b/qapi/replay.json > @@ -0,0 +1,26 @@ > +# -*- Mode: Python -*- > +# > + > +## > +# = Record/replay > +## > + > +{ 'include': 'common.json' } > + > +## > +# @ReplayMode: > +# > +# Mode of the replay subsystem. > +# > +# @none: normal execution mode. Replay or record are not enabled. > +# > +# @record: record mode. All non-deterministic data is written into the > +# replay log. > +# > +# @play: replay mode. Non-deterministic data required for system execution > +# is read from the log. > +# > +# Since: 2.5 > +## > +{ 'enum': 'ReplayMode', > + 'data': [ 'none', 'record', 'play' ] }