This adds a QAPI schema for the properties of the throttle-group object. The x-* properties are not represented in the schema. Their only purpose is to make the nested options in 'limits' available for a command line parser that doesn't support structs. Any parser that will use the QAPI schema will supports structs, though, so they will not be needed in the schema.
Signed-off-by: Kevin Wolf <kw...@redhat.com> --- qapi/block-core.json | 12 ++++++++++++ qapi/qom.json | 7 +++++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/qapi/block-core.json b/qapi/block-core.json index 04ad80bc1e..d7a4cdc11c 100644 --- a/qapi/block-core.json +++ b/qapi/block-core.json @@ -2478,6 +2478,18 @@ '*bps-write-max' : 'int', '*bps-write-max-length' : 'int', '*iops-size' : 'int' } } +## +# @ThrottleGroupProperties: +# +# Properties for throttle-group objects. +# +# @limits: limits to apply for this throttle group +# +# Since: 6.0 +## +{ 'struct': 'ThrottleGroupProperties', + 'data': { '*limits': 'ThrottleLimits' } } + ## # @block-stream: # diff --git a/qapi/qom.json b/qapi/qom.json index f3d1a55cb8..8c9785d2dd 100644 --- a/qapi/qom.json +++ b/qapi/qom.json @@ -5,6 +5,7 @@ # See the COPYING file in the top-level directory. { 'include': 'authz.json' } +{ 'include': 'block-core.json' } { 'include': 'common.json' } ## @@ -435,7 +436,8 @@ 'memory-backend-ram', 'rng-builtin', 'rng-egd', - 'rng-random' + 'rng-random', + 'throttle-group' ] } ## @@ -468,7 +470,8 @@ 'memory-backend-ram': 'MemoryBackendProperties', 'rng-builtin': 'RngProperties', 'rng-egd': 'RngEgdProperties', - 'rng-random': 'RngRandomProperties' + 'rng-random': 'RngRandomProperties', + 'throttle-group': 'ThrottleGroupProperties' } } ## -- 2.28.0