[Qemu-devel] [PATCH v2 09/16] qapi-schema: Collect migration stuff in qapi/migration.json
Cc: Juan Quintela Cc: Dr. David Alan Gilbert Signed-off-by: Markus Armbruster --- MAINTAINERS |1 + Makefile|1 + qapi-schema.json| 1056 + qapi/common.json| 16 + qapi/event.json | 38 -- qapi/migration.json | 1085 +++ 6 files changed, 1104 insertions(+), 1093 deletions(-) create mode 100644 qapi/migration.json diff --git a/MAINTAINERS b/MAINTAINERS index 24c5105..baa9859 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -1498,6 +1498,7 @@ F: migration/ F: scripts/vmstate-static-checker.py F: tests/vmstate-static-checker-data/ F: docs/migration.txt +F: qapi/migration.json Seccomp M: Eduardo Otubo diff --git a/Makefile b/Makefile index c7b6fd1..18cf670 100644 --- a/Makefile +++ b/Makefile @@ -413,6 +413,7 @@ qapi-modules = $(SRC_PATH)/qapi-schema.json $(SRC_PATH)/qapi/common.json \ $(SRC_PATH)/qapi/char.json \ $(SRC_PATH)/qapi/crypto.json \ $(SRC_PATH)/qapi/event.json $(SRC_PATH)/qapi/introspect.json \ + $(SRC_PATH)/qapi/migration.json \ $(SRC_PATH)/qapi/net.json \ $(SRC_PATH)/qapi/rocker.json \ $(SRC_PATH)/qapi/run-state.json \ diff --git a/qapi-schema.json b/qapi-schema.json index 6a23f59..21f54ea 100644 --- a/qapi-schema.json +++ b/qapi-schema.json @@ -87,6 +87,7 @@ { 'include': 'qapi/net.json' } { 'include': 'qapi/rocker.json' } { 'include': 'qapi/ui.json' } +{ 'include': 'qapi/migration.json' } { 'include': 'qapi/event.json' } { 'include': 'qapi/trace.json' } { 'include': 'qapi/introspect.json' } @@ -117,22 +118,6 @@ { 'command': 'qmp_capabilities' } ## -# @StrOrNull: -# -# This is a string value or the explicit lack of a string (null -# pointer in C). Intended for cases when 'optional absent' already -# has a different meaning. -# -# @s: the string value -# @n: no string value -# -# Since: 2.10 -## -{ 'alternate': 'StrOrNull', - 'data': { 's': 'str', -'n': 'null' } } - -## # @LostTickPolicy: # # Policy for handling lost ticks in timer devices. @@ -316,778 +301,6 @@ { 'command': 'query-events', 'returns': ['EventInfo'] } ## -# @MigrationStats: -# -# Detailed migration status. -# -# @transferred: amount of bytes already transferred to the target VM -# -# @remaining: amount of bytes remaining to be transferred to the target VM -# -# @total: total amount of bytes involved in the migration process -# -# @duplicate: number of duplicate (zero) pages (since 1.2) -# -# @skipped: number of skipped zero pages (since 1.5) -# -# @normal: number of normal pages (since 1.2) -# -# @normal-bytes: number of normal bytes sent (since 1.2) -# -# @dirty-pages-rate: number of pages dirtied by second by the -#guest (since 1.3) -# -# @mbps: throughput in megabits/sec. (since 1.6) -# -# @dirty-sync-count: number of times that dirty ram was synchronized (since 2.1) -# -# @postcopy-requests: The number of page requests received from the destination -#(since 2.7) -# -# @page-size: The number of bytes per page for the various page-based -#statistics (since 2.10) -# -# Since: 0.14.0 -## -{ 'struct': 'MigrationStats', - 'data': {'transferred': 'int', 'remaining': 'int', 'total': 'int' , - 'duplicate': 'int', 'skipped': 'int', 'normal': 'int', - 'normal-bytes': 'int', 'dirty-pages-rate' : 'int', - 'mbps' : 'number', 'dirty-sync-count' : 'int', - 'postcopy-requests' : 'int', 'page-size' : 'int' } } - -## -# @XBZRLECacheStats: -# -# Detailed XBZRLE migration cache statistics -# -# @cache-size: XBZRLE cache size -# -# @bytes: amount of bytes already transferred to the target VM -# -# @pages: amount of pages transferred to the target VM -# -# @cache-miss: number of cache miss -# -# @cache-miss-rate: rate of cache miss (since 2.1) -# -# @overflow: number of overflows -# -# Since: 1.2 -## -{ 'struct': 'XBZRLECacheStats', - 'data': {'cache-size': 'int', 'bytes': 'int', 'pages': 'int', - 'cache-miss': 'int', 'cache-miss-rate': 'number', - 'overflow': 'int' } } - -## -# @MigrationStatus: -# -# An enumeration of migration status. -# -# @none: no migration has ever happened. -# -# @setup: migration process has been initiated. -# -# @cancelling: in the process of cancelling migration. -# -# @cancelled: cancelling migration is finished. -# -# @active: in the process of doing migration. -# -# @postcopy-active: like active, but now in postcopy mode. (since 2.5) -# -# @completed: migration is finished. -# -# @failed: some error occurred during migration process. -# -# @colo: VM is in the process of fault tolerance, VM can not get into this -#state unless colo capability is enabled for migration. (since 2.8) -# -# Since: 2.3 -# -## -{ 'enum': 'MigrationStatus', - 'data': [ 'none', 'setup', 'cancelling', 'cancelled', -'active', 'postcopy-active', 'completed
Re: [Qemu-devel] [PATCH v2 09/16] qapi-schema: Collect migration stuff in qapi/migration.json
On Thu, Aug 24, 2017 at 9:28 PM Markus Armbruster wrote: > Cc: Juan Quintela > Cc: Dr. David Alan Gilbert > Signed-off-by: Markus Armbruster > Reviewed-by: Marc-André Lureau --- > MAINTAINERS |1 + > Makefile|1 + > qapi-schema.json| 1056 > + > qapi/common.json| 16 + > qapi/event.json | 38 -- > qapi/migration.json | 1085 > +++ > 6 files changed, 1104 insertions(+), 1093 deletions(-) > create mode 100644 qapi/migration.json > > diff --git a/MAINTAINERS b/MAINTAINERS > index 24c5105..baa9859 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -1498,6 +1498,7 @@ F: migration/ > F: scripts/vmstate-static-checker.py > F: tests/vmstate-static-checker-data/ > F: docs/migration.txt > +F: qapi/migration.json > > Seccomp > M: Eduardo Otubo > diff --git a/Makefile b/Makefile > index c7b6fd1..18cf670 100644 > --- a/Makefile > +++ b/Makefile > @@ -413,6 +413,7 @@ qapi-modules = $(SRC_PATH)/qapi-schema.json > $(SRC_PATH)/qapi/common.json \ > $(SRC_PATH)/qapi/char.json \ > $(SRC_PATH)/qapi/crypto.json \ > $(SRC_PATH)/qapi/event.json > $(SRC_PATH)/qapi/introspect.json \ > + $(SRC_PATH)/qapi/migration.json \ > $(SRC_PATH)/qapi/net.json \ > $(SRC_PATH)/qapi/rocker.json \ > $(SRC_PATH)/qapi/run-state.json \ > diff --git a/qapi-schema.json b/qapi-schema.json > index 6a23f59..21f54ea 100644 > --- a/qapi-schema.json > +++ b/qapi-schema.json > @@ -87,6 +87,7 @@ > { 'include': 'qapi/net.json' } > { 'include': 'qapi/rocker.json' } > { 'include': 'qapi/ui.json' } > +{ 'include': 'qapi/migration.json' } > { 'include': 'qapi/event.json' } > { 'include': 'qapi/trace.json' } > { 'include': 'qapi/introspect.json' } > @@ -117,22 +118,6 @@ > { 'command': 'qmp_capabilities' } > > ## > -# @StrOrNull: > -# > -# This is a string value or the explicit lack of a string (null > -# pointer in C). Intended for cases when 'optional absent' already > -# has a different meaning. > -# > -# @s: the string value > -# @n: no string value > -# > -# Since: 2.10 > -## > -{ 'alternate': 'StrOrNull', > - 'data': { 's': 'str', > -'n': 'null' } } > - > -## > # @LostTickPolicy: > # > # Policy for handling lost ticks in timer devices. > @@ -316,778 +301,6 @@ > { 'command': 'query-events', 'returns': ['EventInfo'] } > > ## > -# @MigrationStats: > -# > -# Detailed migration status. > -# > -# @transferred: amount of bytes already transferred to the target VM > -# > -# @remaining: amount of bytes remaining to be transferred to the target VM > -# > -# @total: total amount of bytes involved in the migration process > -# > -# @duplicate: number of duplicate (zero) pages (since 1.2) > -# > -# @skipped: number of skipped zero pages (since 1.5) > -# > -# @normal: number of normal pages (since 1.2) > -# > -# @normal-bytes: number of normal bytes sent (since 1.2) > -# > -# @dirty-pages-rate: number of pages dirtied by second by the > -#guest (since 1.3) > -# > -# @mbps: throughput in megabits/sec. (since 1.6) > -# > -# @dirty-sync-count: number of times that dirty ram was synchronized > (since 2.1) > -# > -# @postcopy-requests: The number of page requests received from the > destination > -#(since 2.7) > -# > -# @page-size: The number of bytes per page for the various page-based > -#statistics (since 2.10) > -# > -# Since: 0.14.0 > -## > -{ 'struct': 'MigrationStats', > - 'data': {'transferred': 'int', 'remaining': 'int', 'total': 'int' , > - 'duplicate': 'int', 'skipped': 'int', 'normal': 'int', > - 'normal-bytes': 'int', 'dirty-pages-rate' : 'int', > - 'mbps' : 'number', 'dirty-sync-count' : 'int', > - 'postcopy-requests' : 'int', 'page-size' : 'int' } } > - > -## > -# @XBZRLECacheStats: > -# > -# Detailed XBZRLE migration cache statistics > -# > -# @cache-size: XBZRLE cache size > -# > -# @bytes: amount of bytes already transferred to the target VM > -# > -# @pages: amount of pages transferred to the target VM > -# > -# @cache-miss: number of cache miss > -# > -# @cache-miss-rate: rate of cache miss (since 2.1) > -# > -# @overflow: number of overflows > -# > -# Since: 1.2 > -## > -{ 'struct': 'XBZRLECacheStats', > - 'data': {'cache-size': 'int', 'bytes': 'int', 'pages': 'int', > - 'cache-miss': 'int', 'cache-miss-rate': 'number', > - 'overflow': 'int' } } > - > -## > -# @MigrationStatus: > -# > -# An enumeration of migration status. > -# > -# @none: no migration has ever happened. > -# > -# @setup: migration process has been initiated. > -# > -# @cancelling: in the process of cancelling migration. > -# > -# @cancelled: cancelling migration is finished. > -# > -# @active: in the process of doing migration. > -# > -# @postcopy-active: like active, but now in postcopy mode. (since 2.5) > -# > -# @co
Re: [Qemu-devel] [PATCH v2 09/16] qapi-schema: Collect migration stuff in qapi/migration.json
* Markus Armbruster (arm...@redhat.com) wrote: > Cc: Juan Quintela > Cc: Dr. David Alan Gilbert > Signed-off-by: Markus Armbruster Two thoughts: a) Do you actually want that as migration/migration.json? b) I'd prefer StrOrNull to be somewhere more central; Migration may be the only user, but it's not logically migration specific. Reviewed-by: Dr. David Alan Gilbert Dave > --- > MAINTAINERS |1 + > Makefile|1 + > qapi-schema.json| 1056 + > qapi/common.json| 16 + > qapi/event.json | 38 -- > qapi/migration.json | 1085 > +++ > 6 files changed, 1104 insertions(+), 1093 deletions(-) > create mode 100644 qapi/migration.json > > diff --git a/MAINTAINERS b/MAINTAINERS > index 24c5105..baa9859 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -1498,6 +1498,7 @@ F: migration/ > F: scripts/vmstate-static-checker.py > F: tests/vmstate-static-checker-data/ > F: docs/migration.txt > +F: qapi/migration.json > > Seccomp > M: Eduardo Otubo > diff --git a/Makefile b/Makefile > index c7b6fd1..18cf670 100644 > --- a/Makefile > +++ b/Makefile > @@ -413,6 +413,7 @@ qapi-modules = $(SRC_PATH)/qapi-schema.json > $(SRC_PATH)/qapi/common.json \ > $(SRC_PATH)/qapi/char.json \ > $(SRC_PATH)/qapi/crypto.json \ > $(SRC_PATH)/qapi/event.json $(SRC_PATH)/qapi/introspect.json \ > + $(SRC_PATH)/qapi/migration.json \ > $(SRC_PATH)/qapi/net.json \ > $(SRC_PATH)/qapi/rocker.json \ > $(SRC_PATH)/qapi/run-state.json \ > diff --git a/qapi-schema.json b/qapi-schema.json > index 6a23f59..21f54ea 100644 > --- a/qapi-schema.json > +++ b/qapi-schema.json > @@ -87,6 +87,7 @@ > { 'include': 'qapi/net.json' } > { 'include': 'qapi/rocker.json' } > { 'include': 'qapi/ui.json' } > +{ 'include': 'qapi/migration.json' } > { 'include': 'qapi/event.json' } > { 'include': 'qapi/trace.json' } > { 'include': 'qapi/introspect.json' } > @@ -117,22 +118,6 @@ > { 'command': 'qmp_capabilities' } > > ## > -# @StrOrNull: > -# > -# This is a string value or the explicit lack of a string (null > -# pointer in C). Intended for cases when 'optional absent' already > -# has a different meaning. > -# > -# @s: the string value > -# @n: no string value > -# > -# Since: 2.10 > -## > -{ 'alternate': 'StrOrNull', > - 'data': { 's': 'str', > -'n': 'null' } } > - > -## > # @LostTickPolicy: > # > # Policy for handling lost ticks in timer devices. > @@ -316,778 +301,6 @@ > { 'command': 'query-events', 'returns': ['EventInfo'] } > > ## > -# @MigrationStats: > -# > -# Detailed migration status. > -# > -# @transferred: amount of bytes already transferred to the target VM > -# > -# @remaining: amount of bytes remaining to be transferred to the target VM > -# > -# @total: total amount of bytes involved in the migration process > -# > -# @duplicate: number of duplicate (zero) pages (since 1.2) > -# > -# @skipped: number of skipped zero pages (since 1.5) > -# > -# @normal: number of normal pages (since 1.2) > -# > -# @normal-bytes: number of normal bytes sent (since 1.2) > -# > -# @dirty-pages-rate: number of pages dirtied by second by the > -#guest (since 1.3) > -# > -# @mbps: throughput in megabits/sec. (since 1.6) > -# > -# @dirty-sync-count: number of times that dirty ram was synchronized (since > 2.1) > -# > -# @postcopy-requests: The number of page requests received from the > destination > -#(since 2.7) > -# > -# @page-size: The number of bytes per page for the various page-based > -#statistics (since 2.10) > -# > -# Since: 0.14.0 > -## > -{ 'struct': 'MigrationStats', > - 'data': {'transferred': 'int', 'remaining': 'int', 'total': 'int' , > - 'duplicate': 'int', 'skipped': 'int', 'normal': 'int', > - 'normal-bytes': 'int', 'dirty-pages-rate' : 'int', > - 'mbps' : 'number', 'dirty-sync-count' : 'int', > - 'postcopy-requests' : 'int', 'page-size' : 'int' } } > - > -## > -# @XBZRLECacheStats: > -# > -# Detailed XBZRLE migration cache statistics > -# > -# @cache-size: XBZRLE cache size > -# > -# @bytes: amount of bytes already transferred to the target VM > -# > -# @pages: amount of pages transferred to the target VM > -# > -# @cache-miss: number of cache miss > -# > -# @cache-miss-rate: rate of cache miss (since 2.1) > -# > -# @overflow: number of overflows > -# > -# Since: 1.2 > -## > -{ 'struct': 'XBZRLECacheStats', > - 'data': {'cache-size': 'int', 'bytes': 'int', 'pages': 'int', > - 'cache-miss': 'int', 'cache-miss-rate': 'number', > - 'overflow': 'int' } } > - > -## > -# @MigrationStatus: > -# > -# An enumeration of migration status. > -# > -# @none: no migration has ever happened. > -# > -# @setup: migration process has been initiated. > -# > -# @cancelling: in the process of cancelli
Re: [Qemu-devel] [PATCH v2 09/16] qapi-schema: Collect migration stuff in qapi/migration.json
"Dr. David Alan Gilbert" writes: > * Markus Armbruster (arm...@redhat.com) wrote: >> Cc: Juan Quintela >> Cc: Dr. David Alan Gilbert >> Signed-off-by: Markus Armbruster > > > Two thoughts: > a) Do you actually want that as migration/migration.json? I'd prefer to keep the QAPI schema together. But that could be my schema maintainer bias talking :) > b) I'd prefer StrOrNull to be somewhere more central; Migration may be > the only user, but it's not logically migration specific. Makes sense. I'll move it to common.json. > Reviewed-by: Dr. David Alan Gilbert Thanks!
Re: [Qemu-devel] [PATCH v2 09/16] qapi-schema: Collect migration stuff in qapi/migration.json
Markus Armbruster writes: > "Dr. David Alan Gilbert" writes: > >> * Markus Armbruster (arm...@redhat.com) wrote: >>> Cc: Juan Quintela >>> Cc: Dr. David Alan Gilbert >>> Signed-off-by: Markus Armbruster >> >> >> Two thoughts: >> a) Do you actually want that as migration/migration.json? > > I'd prefer to keep the QAPI schema together. But that could be my > schema maintainer bias talking :) > >> b) I'd prefer StrOrNull to be somewhere more central; Migration may be >> the only user, but it's not logically migration specific. > > Makes sense. I'll move it to common.json. Err, this patch already moves it there. >> Reviewed-by: Dr. David Alan Gilbert > > Thanks!