From patchwork Thu Mar 4 15:56:23 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markus Armbruster X-Patchwork-Id: 46919 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [199.232.76.165]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id 1BBDCB7CC2 for ; Fri, 5 Mar 2010 03:01:48 +1100 (EST) Received: from localhost ([127.0.0.1]:33354 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NnDUf-0003pI-Cg for incoming@patchwork.ozlabs.org; Thu, 04 Mar 2010 11:01:45 -0500 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NnDQS-0000HR-3o for qemu-devel@nongnu.org; Thu, 04 Mar 2010 10:57:24 -0500 Received: from [199.232.76.173] (port=35928 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NnDQR-0000Go-Cs for qemu-devel@nongnu.org; Thu, 04 Mar 2010 10:57:23 -0500 Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1NnDQM-0000HL-DI for qemu-devel@nongnu.org; Thu, 04 Mar 2010 10:57:21 -0500 Received: from oxygen.pond.sub.org ([213.239.205.148]:39613) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1NnDQL-0000Fz-7u for qemu-devel@nongnu.org; Thu, 04 Mar 2010 10:57:17 -0500 Received: from blackfin.pond.sub.org (pD9E38041.dip.t-dialin.net [217.227.128.65]) by oxygen.pond.sub.org (Postfix) with ESMTPA id 51F35276DA7 for ; Thu, 4 Mar 2010 16:57:12 +0100 (CET) Received: by blackfin.pond.sub.org (Postfix, from userid 500) id B2F10E6; Thu, 4 Mar 2010 16:57:11 +0100 (CET) From: Markus Armbruster To: qemu-devel@nongnu.org Date: Thu, 4 Mar 2010 16:56:23 +0100 Message-Id: <1267718231-13303-3-git-send-email-armbru@redhat.com> X-Mailer: git-send-email 1.6.6.1 In-Reply-To: <1267718231-13303-1-git-send-email-armbru@redhat.com> References: <1267718231-13303-1-git-send-email-armbru@redhat.com> X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 3) Cc: Luiz Capitulino Subject: [Qemu-devel] [PATCH 02/50] savevm: Fix -loadvm to report errors to stderr, not the monitor X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org A monitor may not even exist. Change load_vmstate() to use qemu_error() instead of monitor_printf(). Parameter mon is now unused, remove it. Signed-off-by: Markus Armbruster --- monitor.c | 2 +- savevm.c | 24 +++++++++++------------- sysemu.h | 2 +- vl.c | 2 +- 4 files changed, 14 insertions(+), 16 deletions(-) diff --git a/monitor.c b/monitor.c index 19470d1..b16c8c3 100644 --- a/monitor.c +++ b/monitor.c @@ -2530,7 +2530,7 @@ static void do_loadvm(Monitor *mon, const QDict *qdict) vm_stop(0); - if (load_vmstate(mon, name) >= 0 && saved_vm_running) + if (load_vmstate(name) >= 0 && saved_vm_running) vm_start(); } diff --git a/savevm.c b/savevm.c index 4b58663..1f6c25e 100644 --- a/savevm.c +++ b/savevm.c @@ -1733,7 +1733,7 @@ void do_savevm(Monitor *mon, const QDict *qdict) vm_start(); } -int load_vmstate(Monitor *mon, const char *name) +int load_vmstate(const char *name) { DriveInfo *dinfo; BlockDriverState *bs, *bs1; @@ -1743,7 +1743,7 @@ int load_vmstate(Monitor *mon, const char *name) bs = get_bs_snapshots(); if (!bs) { - monitor_printf(mon, "No block device supports snapshots\n"); + qemu_error("No block device supports snapshots\n"); return -EINVAL; } @@ -1756,21 +1756,19 @@ int load_vmstate(Monitor *mon, const char *name) ret = bdrv_snapshot_goto(bs1, name); if (ret < 0) { if (bs != bs1) - monitor_printf(mon, "Warning: "); + qemu_error("Warning: "); switch(ret) { case -ENOTSUP: - monitor_printf(mon, - "Snapshots not supported on device '%s'\n", - bdrv_get_device_name(bs1)); + qemu_error("Snapshots not supported on device '%s'\n", + bdrv_get_device_name(bs1)); break; case -ENOENT: - monitor_printf(mon, "Could not find snapshot '%s' on " - "device '%s'\n", - name, bdrv_get_device_name(bs1)); + qemu_error("Could not find snapshot '%s' on device '%s'\n", + name, bdrv_get_device_name(bs1)); break; default: - monitor_printf(mon, "Error %d while activating snapshot on" - " '%s'\n", ret, bdrv_get_device_name(bs1)); + qemu_error("Error %d while activating snapshot on '%s'\n", + ret, bdrv_get_device_name(bs1)); break; } /* fatal on snapshot block device */ @@ -1788,13 +1786,13 @@ int load_vmstate(Monitor *mon, const char *name) /* restore the VM state */ f = qemu_fopen_bdrv(bs, 0); if (!f) { - monitor_printf(mon, "Could not open VM state file\n"); + qemu_error("Could not open VM state file\n"); return -EINVAL; } ret = qemu_loadvm_state(f); qemu_fclose(f); if (ret < 0) { - monitor_printf(mon, "Error %d while loading VM state\n", ret); + qemu_error("Error %d while loading VM state\n", ret); return ret; } return 0; diff --git a/sysemu.h b/sysemu.h index 8ba618e..4d8b7a2 100644 --- a/sysemu.h +++ b/sysemu.h @@ -54,7 +54,7 @@ extern qemu_irq qemu_system_powerdown; void qemu_system_reset(void); void do_savevm(Monitor *mon, const QDict *qdict); -int load_vmstate(Monitor *mon, const char *name); +int load_vmstate(const char *name); void do_delvm(Monitor *mon, const QDict *qdict); void do_info_snapshots(Monitor *mon); diff --git a/vl.c b/vl.c index db7a178..8a588c7 100644 --- a/vl.c +++ b/vl.c @@ -6023,7 +6023,7 @@ int main(int argc, char **argv, char **envp) qemu_system_reset(); if (loadvm) { - if (load_vmstate(cur_mon, loadvm) < 0) { + if (load_vmstate(loadvm) < 0) { autostart = 0; } }