From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:41787) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R27eN-00036H-3j for qemu-devel@nongnu.org; Fri, 09 Sep 2011 16:26:12 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1R27eM-0001uM-07 for qemu-devel@nongnu.org; Fri, 09 Sep 2011 16:26:10 -0400 Received: from mx1.redhat.com ([209.132.183.28]:40849) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R27eL-0001u8-P9 for qemu-devel@nongnu.org; Fri, 09 Sep 2011 16:26:09 -0400 From: Luiz Capitulino Date: Fri, 9 Sep 2011 17:25:46 -0300 Message-Id: <1315599946-27081-10-git-send-email-lcapitulino@redhat.com> In-Reply-To: <1315599946-27081-1-git-send-email-lcapitulino@redhat.com> References: <1315599946-27081-1-git-send-email-lcapitulino@redhat.com> Subject: [Qemu-devel] [PATCH 9/9] HMP: info status: Print the VM state List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: kwolf@redhat.com, aliguori@us.ibm.com, jan.kiszka@siemens.com, armbru@redhat.com, amit.shah@redhat.com, vilanova@ac.upc.edu Today our printf format for the "info status" command is: VM status: %s Where the string can be "running", "running (single step mode)" or "paused". This commit extends it to: VM status: %s (%s) The second string corresponds to the "status" field as returned by the query-status QMP command and it's only printed if "status" is not "running" or "paused". Example: VM status: paused (shutdown) PS: libvirt uses "info status" when using HMP, but the new format should not break it. Signed-off-by: Luiz Capitulino --- monitor.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/monitor.c b/monitor.c index 7684ba9..860530b 100644 --- a/monitor.c +++ b/monitor.c @@ -2618,6 +2618,7 @@ static int do_inject_nmi(Monitor *mon, const QDict *qdict, QObject **ret_data) static void do_info_status_print(Monitor *mon, const QObject *data) { QDict *qdict; + const char *status; qdict = qobject_to_qdict(data); @@ -2631,6 +2632,11 @@ static void do_info_status_print(Monitor *mon, const QObject *data) monitor_printf(mon, "paused"); } + status = qdict_get_str(qdict, "status"); + if (strcmp(status, "paused") && strcmp(status, "running")) { + monitor_printf(mon, " (%s)", status); + } + monitor_printf(mon, "\n"); } -- 1.7.7.rc0.72.g4b5ea