From patchwork Wed Aug 26 17:05:28 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Luiz Capitulino X-Patchwork-Id: 32176 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 bilbo.ozlabs.org (Postfix) with ESMTPS id B9F30B7093 for ; Thu, 27 Aug 2009 03:46:29 +1000 (EST) Received: from localhost ([127.0.0.1]:37358 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MgMZi-0000JL-BO for incoming@patchwork.ozlabs.org; Wed, 26 Aug 2009 13:46:22 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MgLxA-00038j-9y for qemu-devel@nongnu.org; Wed, 26 Aug 2009 13:06:32 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MgLx5-00030t-AQ for qemu-devel@nongnu.org; Wed, 26 Aug 2009 13:06:31 -0400 Received: from [199.232.76.173] (port=45801 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MgLx5-0002zk-5O for qemu-devel@nongnu.org; Wed, 26 Aug 2009 13:06:27 -0400 Received: from mx1.redhat.com ([209.132.183.28]:17183) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1MgLx3-0000gO-Pi for qemu-devel@nongnu.org; Wed, 26 Aug 2009 13:06:26 -0400 Received: from int-mx06.intmail.prod.int.phx2.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.19]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id n7QH6OBT029609; Wed, 26 Aug 2009 13:06:25 -0400 Received: from localhost (vpn-10-90.bos.redhat.com [10.16.10.90]) by int-mx06.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id n7QH6NAx007399; Wed, 26 Aug 2009 13:06:24 -0400 From: Luiz Capitulino To: qemu-devel@nongnu.org Date: Wed, 26 Aug 2009 14:05:28 -0300 Message-Id: <1251306352-31316-6-git-send-email-lcapitulino@redhat.com> In-Reply-To: <1251306352-31316-1-git-send-email-lcapitulino@redhat.com> References: <1251306352-31316-1-git-send-email-lcapitulino@redhat.com> X-Scanned-By: MIMEDefang 2.67 on 10.5.11.19 X-detected-operating-system: by monty-python.gnu.org: Genre and OS details not recognized. Cc: aliguori@us.ibm.com, avi@redhat.com Subject: [Qemu-devel] [PATCH 05/29] Add wrappers to functions used by 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 Some functions exported to be used by the Monitor as command handlers are also called in other places as regular functions. When those functions got ported to use the Monitor dictionary to pass argments, the callers will have to setup a dictionary to be able to call them. To avoid this problem, this commit add wrappers to those functions, so that we change the wrapper to accept the dictionary, letting the current functions as is. The following wrappers are being added: - do_help_cmd() - do_pci_device_hot_remove() - qemu_loadvm() Signed-off-by: Luiz Capitulino --- hw/pci-hotplug.c | 5 +++++ monitor.c | 5 +++++ qemu-monitor.hx | 4 ++-- savevm.c | 7 ++++++- sysemu.h | 2 ++ vl.c | 2 +- 6 files changed, 21 insertions(+), 4 deletions(-) diff --git a/hw/pci-hotplug.c b/hw/pci-hotplug.c index 1f92e09..492a893 100644 --- a/hw/pci-hotplug.c +++ b/hw/pci-hotplug.c @@ -203,6 +203,11 @@ void pci_device_hot_remove(Monitor *mon, const char *pci_addr) qemu_system_device_hot_add(bus, slot, 0); } +void do_pci_device_hot_remove(Monitor *mon, const char *pci_addr) +{ + pci_device_hot_remove(mon, pci_addr); +} + static int pci_match_fn(void *dev_private, void *arg) { PCIDevice *dev = dev_private; diff --git a/monitor.c b/monitor.c index 967171b..923b518 100644 --- a/monitor.c +++ b/monitor.c @@ -251,6 +251,11 @@ static void help_cmd(Monitor *mon, const char *name) } } +static void do_help_cmd(Monitor *mon, const char *name) +{ + help_cmd(mon, name); +} + static void do_commit(Monitor *mon, const char *device) { int all_devices; diff --git a/qemu-monitor.hx b/qemu-monitor.hx index f56354b..2ef4bf6 100644 --- a/qemu-monitor.hx +++ b/qemu-monitor.hx @@ -9,7 +9,7 @@ STEXI @table @option ETEXI - { "help|?", "s?", help_cmd, "[cmd]", "show the help" }, + { "help|?", "s?", do_help_cmd, "[cmd]", "show the help" }, STEXI @item help or ? [@var{cmd}] Show the help for all commands or just for command @var{cmd}. @@ -517,7 +517,7 @@ Hot-add PCI device. ETEXI #if defined(TARGET_I386) - { "pci_del", "s", pci_device_hot_remove, "[[:]:]", "hot remove PCI device" }, + { "pci_del", "s", do_pci_device_hot_remove, "[[:]:]", "hot remove PCI device" }, #endif STEXI @item pci_del diff --git a/savevm.c b/savevm.c index 975e7ab..69e6b53 100644 --- a/savevm.c +++ b/savevm.c @@ -1146,7 +1146,7 @@ void do_savevm(Monitor *mon, const char *name) vm_start(); } -void do_loadvm(Monitor *mon, const char *name) +void qemu_loadvm(Monitor *mon, const char *name) { DriveInfo *dinfo; BlockDriverState *bs, *bs1; @@ -1218,6 +1218,11 @@ void do_loadvm(Monitor *mon, const char *name) vm_start(); } +void do_loadvm(Monitor *mon, const char *name) +{ + qemu_loadvm(mon, name); +} + void do_delvm(Monitor *mon, const char *name) { DriveInfo *dinfo; diff --git a/sysemu.h b/sysemu.h index 1df0872..23b22b2 100644 --- a/sysemu.h +++ b/sysemu.h @@ -52,6 +52,7 @@ void qemu_system_reset(void); void do_savevm(Monitor *mon, const char *name); void do_loadvm(Monitor *mon, const char *name); +void qemu_loadvm(Monitor *mon, const char *name); void do_delvm(Monitor *mon, const char *name); void do_info_snapshots(Monitor *mon); @@ -209,6 +210,7 @@ void destroy_bdrvs(dev_match_fn *match_fn, void *arg); void pci_device_hot_add(Monitor *mon, const char *pci_addr, const char *type, const char *opts); void drive_hot_add(Monitor *mon, const char *pci_addr, const char *opts); +void do_pci_device_hot_remove(Monitor *mon, const char *pci_addr); void pci_device_hot_remove(Monitor *mon, const char *pci_addr); void pci_device_hot_remove_success(int pcibus, int slot); diff --git a/vl.c b/vl.c index c164f45..d1ffe04 100644 --- a/vl.c +++ b/vl.c @@ -5983,7 +5983,7 @@ int main(int argc, char **argv, char **envp) } if (loadvm) - do_loadvm(cur_mon, loadvm); + qemu_loadvm(cur_mon, loadvm); if (incoming) { qemu_start_incoming_migration(incoming);