[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH] chardev: make chardevs specified in config file wor
From: |
Gerd Hoffmann |
Subject: |
[Qemu-devel] [PATCH] chardev: make chardevs specified in config file work. |
Date: |
Wed, 25 Nov 2009 13:11:34 +0100 |
The patch decuples the -chardev switch and the actual chardev
initialization. Without this patch qemu ignores chardev entries
coming via -readconfig.
Signed-off-by: Gerd Hoffmann <address@hidden>
---
vl.c | 16 +++++++++++++---
1 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/vl.c b/vl.c
index d188fc6..524b496 100644
--- a/vl.c
+++ b/vl.c
@@ -4573,6 +4573,16 @@ static int device_init_func(QemuOpts *opts, void *opaque)
return 0;
}
+static int chardev_init_func(QemuOpts *opts, void *opaque)
+{
+ CharDriverState *chr;
+
+ chr = qemu_chr_open_opts(opts, NULL);
+ if (!chr)
+ return -1;
+ return 0;
+}
+
struct device_config {
enum {
DEV_USB, /* -usbdevice */
@@ -5193,9 +5203,6 @@ int main(int argc, char **argv, char **envp)
fprintf(stderr, "parse error: %s\n", optarg);
exit(1);
}
- if (qemu_chr_open_opts(opts, NULL) == NULL) {
- exit(1);
- }
break;
case QEMU_OPTION_serial:
add_device_config(DEV_SERIAL, optarg);
@@ -5506,6 +5513,9 @@ int main(int argc, char **argv, char **envp)
qemu_opts_foreach(&qemu_device_opts, default_driver_check, NULL, 0);
+ if (qemu_opts_foreach(&qemu_chardev_opts, chardev_init_func, NULL, 1) != 0)
+ exit(1);
+
if (display_type == DT_NOGRAPHIC) {
if (default_parallel)
add_device_config(DEV_PARALLEL, "null");
--
1.6.2.5
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-devel] [PATCH] chardev: make chardevs specified in config file work.,
Gerd Hoffmann <=