From 8167d8bd363f9ee22c9ee53566a51cfe886d39f1 Mon Sep 17 00:00:00 2001 From: Eric Blake Date: Fri, 16 Mar 2018 07:33:35 -0500 Subject: qmp: add new event "command-dropped" This event will be emitted if one QMP command is dropped. Also, declare an enum for the reasons. Reviewed-by: Fam Zheng Reviewed-by: Stefan Hajnoczi Signed-off-by: Peter Xu Message-Id: <20180309090006.10018-16-peterx@redhat.com> Reviewed-by: Eric Blake [eblake: rebase to master] Signed-off-by: Eric Blake --- qapi/misc.json | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/qapi/misc.json b/qapi/misc.json index 564216ae97..1545e41620 100644 --- a/qapi/misc.json +++ b/qapi/misc.json @@ -3390,3 +3390,40 @@ # ## { 'command': 'query-sev-capabilities', 'returns': 'SevCapability' } + +## +# @CommandDropReason: +# +# Reasons that caused one command to be dropped. +# +# @queue-full: the command queue is full. This can only occur when +# the client sends a new non-oob command before the +# response to the previous non-oob command has been +# received. +# +# Since: 2.12 +## +{ 'enum': 'CommandDropReason', + 'data': [ 'queue-full' ] } + +## +# @COMMAND_DROPPED: +# +# Emitted when a command is dropped due to some reason. Commands can +# only be dropped when the oob capability is enabled. +# +# @id: The dropped command's "id" field. +# +# @reason: The reason why the command is dropped. +# +# Since: 2.12 +# +# Example: +# +# { "event": "COMMAND_DROPPED", +# "data": {"result": {"id": "libvirt-102", +# "reason": "queue-full" } } } +# +## +{ 'event': 'COMMAND_DROPPED' , + 'data': { 'id': 'any', 'reason': 'CommandDropReason' } } -- cgit v1.2.1