[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] Re: [FOR 0.12 PATCH v3 17/21] rework -monitor handling, sw
From: |
Luiz Capitulino |
Subject: |
[Qemu-devel] Re: [FOR 0.12 PATCH v3 17/21] rework -monitor handling, switch to QemuOpts |
Date: |
Mon, 7 Dec 2009 12:59:47 -0200 |
On Mon, 7 Dec 2009 13:42:49 +0100
Gerd Hoffmann <address@hidden> wrote:
> +static int mon_init_func(QemuOpts *opts, void *opaque)
> +{
> + CharDriverState *chr;
> + const char *chardev;
> + const char *mode;
> + int flags;
> +
> + qemu_opts_print(opts, NULL);
> +
> + mode = qemu_opt_get(opts, "mode");
> + if (mode == NULL) {
> + mode = "readline";
> + }
> + if (strcmp(mode, "readline") == 0) {
> + flags = MONITOR_USE_READLINE;
> + } else if (strcmp(mode, "control") == 0) {
> + flags = MONITOR_USE_CONTROL;
> + } else {
> + fprintf(stderr, "unknown monitor mode \"%s\"\n", mode);
> + exit(1);
> + }
> +
> + if (qemu_opt_get_bool(opts, "default", 0))
> + flags |= MONITOR_IS_DEFAULT;
> +
> + chardev = qemu_opt_get(opts, "chardev");
> + chr = qemu_chr_find(chardev);
> + if (chardev == NULL) {
> + fprintf(stderr, "chardev \"%s\" not found\n", chardev);
> + exit(1);
> + }
We should check for NULL before calling qemu_chr_find().
Also, I'm getting a segfault when running QEMU w/o any monitor cmd-line,
like:
$ qemu -hda disks/fedora-11-kratos-i386.img -m 1G
The reason for the segfault is that the chardev 'monitor' is not found,
so qemu_chr_find() returns NULL, passing it down to:
> +
> + monitor_init(chr, flags);
> + return 0;
> +}
> +
Apart from that, monitor changes seem ok to me.
- [Qemu-devel] Re: [FOR 0.12 PATCH v3 10/21] default devices: add global cmd line option., (continued)
- [Qemu-devel] [FOR 0.12 PATCH v3 15/21] chardev: make chardevs specified in config file work., Gerd Hoffmann, 2009/12/07
- [Qemu-devel] [FOR 0.12 PATCH v3 06/21] default devices: parallel port., Gerd Hoffmann, 2009/12/07
- [Qemu-devel] [FOR 0.12 PATCH v3 13/21] qdev: make compat stuff more generic, Gerd Hoffmann, 2009/12/07
- [Qemu-devel] [FOR 0.12 PATCH v3 20/21] default devices: virtio consoles., Gerd Hoffmann, 2009/12/07
- [Qemu-devel] [FOR 0.12 PATCH v3 16/21] un-static qemu_chr_parse_compat(), Gerd Hoffmann, 2009/12/07
- [Qemu-devel] [FOR 0.12 PATCH v3 17/21] rework -monitor handling, switch to QemuOpts, Gerd Hoffmann, 2009/12/07
- [Qemu-devel] [FOR 0.12 PATCH v3 21/21] Set default console to virtio on S390x, Gerd Hoffmann, 2009/12/07
- [Qemu-devel] [FOR 0.12 PATCH v3 19/21] add -qmp convinience switch, Gerd Hoffmann, 2009/12/07
- [Qemu-devel] [FOR 0.12 PATCH v3 14/21] qdev: add command line option to set global defaults for properties., Gerd Hoffmann, 2009/12/07
- [Qemu-devel] [FOR 0.12 PATCH v3 18/21] add new -mon switch, Gerd Hoffmann, 2009/12/07