The next version of Linux will introduce boolean statistics, which can only have 0 or 1 values. Support them in the schema and in the HMP command.
Suggested-by: Amneesh Singh <na...@weirdnatto.in> Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> --- monitor/hmp-cmds.c | 2 ++ qapi/stats.json | 4 +++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/monitor/hmp-cmds.c b/monitor/hmp-cmds.c index ca98df0495..e8d6963722 100644 --- a/monitor/hmp-cmds.c +++ b/monitor/hmp-cmds.c @@ -2337,6 +2337,8 @@ static void print_stats_results(Monitor *mon, StatsTarget target, if (stats_value->type == QTYPE_QNUM) { monitor_printf(mon, ": %" PRId64 "\n", stats_value->u.scalar); + } else if (stats_value->type == QTYPE_QBOOL) { + monitor_printf(mon, ": %s\n", stats_value->u.boolean ? "yes" : "no"); } else if (stats_value->type == QTYPE_QLIST) { uint64List *list; int i; diff --git a/qapi/stats.json b/qapi/stats.json index 2f8bfe8fdb..57db5b1c74 100644 --- a/qapi/stats.json +++ b/qapi/stats.json @@ -38,11 +38,12 @@ # @bytes: stat reported in bytes. # @seconds: stat reported in seconds. # @cycles: stat reported in clock cycles. +# @boolean: stat is a boolean value. # # Since: 7.1 ## { 'enum' : 'StatsUnit', - 'data' : [ 'bytes', 'seconds', 'cycles' ] } + 'data' : [ 'bytes', 'seconds', 'cycles', 'boolean' ] } ## # @StatsProvider: @@ -123,6 +124,7 @@ ## { 'alternate': 'StatsValue', 'data': { 'scalar': 'uint64', + 'boolean': 'bool', 'list': [ 'uint64' ] } } ## -- 2.36.1