Hu Tao <hu...@cn.fujitsu.com> writes:

> This event will be emited when the guest is panicked.
>
> Signed-off-by: Wen Congyang <we...@cn.fujitsu.com>
> Signed-off-by: Hu Tao <hu...@cn.fujitsu.com>
> ---
>  QMP/qmp-events.txt        | 14 ++++++++++++++
>  include/monitor/monitor.h |  1 +
>  monitor.c                 |  1 +
>  3 files changed, 16 insertions(+)
>
> diff --git a/QMP/qmp-events.txt b/QMP/qmp-events.txt
> index b2698e4..62fffad 100644
> --- a/QMP/qmp-events.txt
> +++ b/QMP/qmp-events.txt
> @@ -428,3 +428,17 @@ Example:
>  
>  Note: If action is "reset", "shutdown", or "pause" the WATCHDOG event is
>  followed respectively by the RESET, SHUTDOWN, or STOP events.
> +
> +GUEST_PANICKED
> +--------------
> +
> +Emitted when the guest OS is panicked.

This suggests we reliably emit the event on guest panic.  That's not
accurate; we emit it only when the guest manages to tell us.  Better
clarify.  Perhaps "Emitted when we detect a guest OS panic" suffices.

> +
> +Data:
> +
> +- "action": Action that has been taken. Currently it's always "pause".

Please make that

- "action": Action that has been taken (json-string, currently always "pause")

> +
> +Example:
> +
> +{ "event": "GUEST_PANICKED",
> +     "data": { "action": "pause" } }
> diff --git a/include/monitor/monitor.h b/include/monitor/monitor.h
> index 87fb49c..4006905 100644
> --- a/include/monitor/monitor.h
> +++ b/include/monitor/monitor.h
> @@ -45,6 +45,7 @@ typedef enum MonitorEvent {
>      QEVENT_WAKEUP,
>      QEVENT_BALLOON_CHANGE,
>      QEVENT_SPICE_MIGRATE_COMPLETED,
> +    QEVENT_GUEST_PANICKED,
>  
>      /* Add to 'monitor_event_names' array in monitor.c when
>       * defining new events here */
> diff --git a/monitor.c b/monitor.c
> index 32a6e74..5b7d7f9 100644
> --- a/monitor.c
> +++ b/monitor.c
> @@ -463,6 +463,7 @@ static const char *monitor_event_names[] = {
>      [QEVENT_WAKEUP] = "WAKEUP",
>      [QEVENT_BALLOON_CHANGE] = "BALLOON_CHANGE",
>      [QEVENT_SPICE_MIGRATE_COMPLETED] = "SPICE_MIGRATE_COMPLETED",
> +    [QEVENT_GUEST_PANICKED] = "GUEST_PANICKED",
>  };
>  QEMU_BUILD_BUG_ON(ARRAY_SIZE(monitor_event_names) != QEVENT_MAX)

Reply via email to