From: Luiz Capitulino <lcapitulino@redhat.com>
To: qemu-devel@nongnu.org
Cc: jan.kiszka@siemens.com, aliguori@us.ibm.com, avi@redhat.com
Subject: [Qemu-devel] [PATCH 03/25] Add wrappers to functions used by the Monitor
Date: Mon, 3 Aug 2009 13:57:00 -0300 [thread overview]
Message-ID: <1249318642-19324-4-git-send-email-lcapitulino@redhat.com> (raw)
In-Reply-To: <1249318642-19324-1-git-send-email-lcapitulino@redhat.com>
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 <lcapitulino@redhat.com>
---
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 43675e2..335681d 100644
--- a/hw/pci-hotplug.c
+++ b/hw/pci-hotplug.c
@@ -199,6 +199,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 aac8878..7b8cc5d 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 11bdb2c..8936e93 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}.
@@ -519,7 +519,7 @@ Hot-add PCI device.
ETEXI
#if defined(TARGET_I386)
- { "pci_del", "s", pci_device_hot_remove, "[[<domain>:]<bus>:]<slot>", "hot remove PCI device" },
+ { "pci_del", "s", do_pci_device_hot_remove, "[[<domain>:]<bus>:]<slot>", "hot remove PCI device" },
#endif
STEXI
@item pci_del
diff --git a/savevm.c b/savevm.c
index 570377f..9f988e6 100644
--- a/savevm.c
+++ b/savevm.c
@@ -1145,7 +1145,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;
@@ -1217,6 +1217,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 6af88d8..b839134 100644
--- a/sysemu.h
+++ b/sysemu.h
@@ -59,6 +59,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);
@@ -211,6 +212,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 fdd4f03..8325530 100644
--- a/vl.c
+++ b/vl.c
@@ -6084,7 +6084,7 @@ int main(int argc, char **argv, char **envp)
}
if (loadvm)
- do_loadvm(cur_mon, loadvm);
+ qemu_loadvm(cur_mon, loadvm);
if (incoming) {
autostart = 0;
--
1.6.4.rc3.12.gdf73a
next prev parent reply other threads:[~2009-08-03 16:58 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-03 16:56 [Qemu-devel] [PATCH v1 00/25] Monitor handlers new structure phase 1 Luiz Capitulino
2009-08-03 16:56 ` [Qemu-devel] [PATCH 01/25] Introduce QEMU dictionary data type Luiz Capitulino
2009-08-03 16:56 ` [Qemu-devel] [PATCH 02/25] net: Fix do_set_link() return type Luiz Capitulino
2009-08-03 16:57 ` Luiz Capitulino [this message]
2009-08-03 16:57 ` [Qemu-devel] [PATCH 04/25] monitor: Document missing supported argument types Luiz Capitulino
2009-08-03 16:57 ` [Qemu-devel] [PATCH 05/25] monitor: New format for handlers " Luiz Capitulino
2009-08-03 16:57 ` [Qemu-devel] [PATCH 06/25] monitor: Setup a dictionary with handler arguments Luiz Capitulino
2009-08-03 16:57 ` [Qemu-devel] [PATCH 07/25] monitor: Export qdict.h header Luiz Capitulino
2009-08-03 16:57 ` [Qemu-devel] [PATCH 08/25] monitor: New GET_TLONG and GET_TPHYSADDR macros Luiz Capitulino
2009-08-04 17:27 ` Blue Swirl
2009-08-04 19:42 ` Luiz Capitulino
2009-08-03 16:57 ` [Qemu-devel] [PATCH 09/25] monitor: Port handler_0 to use the dictionary Luiz Capitulino
2009-08-03 16:57 ` [Qemu-devel] [PATCH 10/25] monitor: Port handler_1 " Luiz Capitulino
2009-08-03 16:57 ` [Qemu-devel] [PATCH 11/25] monitor: Port handler_2 " Luiz Capitulino
2009-08-03 16:57 ` [Qemu-devel] [PATCH 12/25] monitor: Port handler_3 " Luiz Capitulino
2009-08-03 16:57 ` [Qemu-devel] [PATCH 13/25] monitor: Port handler_4 " Luiz Capitulino
2009-08-03 16:57 ` [Qemu-devel] [PATCH 14/25] monitor: Port handler_5 " Luiz Capitulino
2009-08-03 16:57 ` [Qemu-devel] [PATCH 15/25] monitor: Port handler_6 " Luiz Capitulino
2009-08-03 16:57 ` [Qemu-devel] [PATCH 16/25] monitor: Port handler_7 " Luiz Capitulino
2009-08-03 16:57 ` [Qemu-devel] [PATCH 17/25] monitor: Drop handler_8 and handler_9 handling Luiz Capitulino
2009-08-03 16:57 ` [Qemu-devel] [PATCH 18/25] monitor: Port handler_10 to use the dictionary Luiz Capitulino
2009-08-03 16:57 ` [Qemu-devel] [PATCH 19/25] monitor: Split monitor_handle_command() Luiz Capitulino
2009-08-03 16:57 ` [Qemu-devel] [PATCH 20/25] monitor: Add a new index for str_allocated[] Luiz Capitulino
2009-08-03 16:57 ` [Qemu-devel] [PATCH 21/25] monitor: Drop args[] from monitor_parse_command() Luiz Capitulino
2009-08-03 16:57 ` [Qemu-devel] [PATCH 22/25] monitor: Drop 'nb_args' " Luiz Capitulino
2009-08-03 16:57 ` [Qemu-devel] [PATCH 23/25] Add check support Luiz Capitulino
2009-08-03 16:57 ` [Qemu-devel] [PATCH 24/25] Introduce dictionary test data file Luiz Capitulino
2009-08-03 16:57 ` [Qemu-devel] [PATCH 25/25] Introduce QDict unit-tests Luiz Capitulino
2009-08-10 20:17 ` [Qemu-devel] [PATCH v1 00/25] Monitor handlers new structure phase 1 Anthony Liguori
2009-08-10 20:42 ` Luiz Capitulino
2009-08-10 20:45 ` Anthony Liguori
2009-08-10 20:59 ` Luiz Capitulino
-- strict thread matches above, loose matches on Subject: below --
2009-07-28 22:04 [Qemu-devel] [PATCH " Luiz Capitulino
2009-07-28 22:04 ` [Qemu-devel] [PATCH 03/25] Add wrappers to functions used by the Monitor Luiz Capitulino
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1249318642-19324-4-git-send-email-lcapitulino@redhat.com \
--to=lcapitulino@redhat.com \
--cc=aliguori@us.ibm.com \
--cc=avi@redhat.com \
--cc=jan.kiszka@siemens.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).