From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:37940) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QrFTS-00015K-2h for qemu-devel@nongnu.org; Wed, 10 Aug 2011 16:34:02 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QrFTM-000886-Qi for qemu-devel@nongnu.org; Wed, 10 Aug 2011 16:33:57 -0400 Received: from mx1.redhat.com ([209.132.183.28]:32890) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QrFTM-00087z-G4 for qemu-devel@nongnu.org; Wed, 10 Aug 2011 16:33:52 -0400 From: Luiz Capitulino Date: Wed, 10 Aug 2011 17:33:28 -0300 Message-Id: <1313008408-23161-9-git-send-email-lcapitulino@redhat.com> In-Reply-To: <1313008408-23161-1-git-send-email-lcapitulino@redhat.com> References: <1313008408-23161-1-git-send-email-lcapitulino@redhat.com> Subject: [Qemu-devel] [PATCH 8/8] 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, avi@redhat.com, amit.shah@redhat.com 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 c9e65fa..c186d6b 100644 --- a/monitor.c +++ b/monitor.c @@ -2604,6 +2604,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); @@ -2617,6 +2618,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.6.433.g1421f