From: "Andreas Färber" <afaerber@suse.de>
To: qemu-devel@nongnu.org
Cc: "Amos Kong" <akong@redhat.com>,
qemu-stable@nongnu.org, "Andreas Färber" <afaerber@suse.de>
Subject: [Qemu-devel] [PULL 01/20] qdev: Fix crash by validating the object type
Date: Mon, 5 May 2014 21:03:45 +0200 [thread overview]
Message-ID: <1399316644-20700-2-git-send-email-afaerber@suse.de> (raw)
In-Reply-To: <1399316644-20700-1-git-send-email-afaerber@suse.de>
From: Amos Kong <akong@redhat.com>
QEMU crashed when I try to list device parameters and the driver name is
actually an available bus name.
# qemu -device virtio-pci-bus,?
# qemu -device virtio-bus,?
# qemu -device virtio-serial-bus,?
qdev-monitor.c:212:qdev_device_help: Object 0x7fd932f50620 is not an
instance of type device
Aborted (core dumped)
We can also reproduce this bug by adding device from monitor, so it's
worth to fix the crash.
(qemu) device_add virtio-serial-bus
qdev-monitor.c:491:qdev_device_add: Object 0x7f5e89530920 is not an
instance of type device
Aborted (core dumped)
Cc: qemu-stable@nongnu.org
Signed-off-by: Amos Kong <akong@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Andreas Färber <afaerber@suse.de>
---
qdev-monitor.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/qdev-monitor.c b/qdev-monitor.c
index 6189780..02cbe43 100644
--- a/qdev-monitor.c
+++ b/qdev-monitor.c
@@ -206,7 +206,7 @@ int qdev_device_help(QemuOpts *opts)
}
}
- if (!klass) {
+ if (!object_class_dynamic_cast(klass, TYPE_DEVICE)) {
return 0;
}
do {
--
1.8.4.5
next prev parent reply other threads:[~2014-05-05 19:04 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-05-05 19:03 [Qemu-devel] [PULL 00/20] QOM devices patch queue 2014-05-05 Andreas Färber
2014-05-05 19:03 ` Andreas Färber [this message]
2014-05-05 19:03 ` [Qemu-devel] [PULL 02/20] machine: Remove obsoleted field from QEMUMachine Andreas Färber
2014-05-05 19:03 ` [Qemu-devel] [PULL 03/20] machine: Copy QEMUMachine's fields to MachineClass Andreas Färber
2014-05-05 19:03 ` [Qemu-devel] [PULL 04/20] vl.c: Replace QEMUMachine with MachineClass in QEMUMachineInitArgs Andreas Färber
2014-05-05 19:03 ` [Qemu-devel] [PULL 05/20] machine: Replace QEMUMachine by MachineClass in accelerator configuration Andreas Färber
2014-05-05 19:03 ` [Qemu-devel] [PULL 06/20] machine: Remove QEMUMachine indirection from MachineClass Andreas Färber
2014-05-05 19:03 ` [Qemu-devel] [PULL 07/20] hw: Consistently name Error * objects err, and not errp Andreas Färber
2014-05-05 19:03 ` [Qemu-devel] [PULL 08/20] hw: Consistently name Error ** objects errp, and not err Andreas Färber
2014-05-05 19:03 ` [Qemu-devel] [PULL 09/20] qom: Clean up fragile use of error_is_set() in set() methods Andreas Färber
2014-05-05 19:03 ` [Qemu-devel] [PULL 10/20] arm: Clean up fragile use of error_is_set() in realize() methods Andreas Färber
2014-05-05 19:03 ` [Qemu-devel] [PULL 11/20] MAINTAINERS: Document QOM Andreas Färber
2014-05-05 19:03 ` [Qemu-devel] [PULL 12/20] qtest: Assure that init_socket()'s listen() does not fail Andreas Färber
2014-05-05 19:03 ` [Qemu-devel] [PULL 13/20] qtest: Add error reporting to socket_accept() Andreas Färber
2014-05-05 19:03 ` [Qemu-devel] [PULL 14/20] qtest: Be paranoid about accept() addrlen argument Andreas Färber
2014-05-05 19:03 ` [Qemu-devel] [PULL 15/20] tests: Add ac97 qtest Andreas Färber
2014-05-05 19:04 ` [Qemu-devel] [PULL 16/20] tests: Add es1370 qtest Andreas Färber
2014-05-05 19:04 ` [Qemu-devel] [PULL 17/20] tests: Add intel-hda qtests Andreas Färber
2014-05-05 19:04 ` [Qemu-devel] [PULL 18/20] tests: Add ioh3420 qtest Andreas Färber
2014-05-05 19:04 ` [Qemu-devel] [PULL 19/20] tests: Add EHCI qtest Andreas Färber
2014-05-05 19:04 ` [Qemu-devel] [PULL 20/20] PortioList: Store PortioList in device state Andreas Färber
2014-05-07 13:53 ` [Qemu-devel] [PULL 00/20] QOM devices patch queue 2014-05-05 Peter Maydell
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=1399316644-20700-2-git-send-email-afaerber@suse.de \
--to=afaerber@suse.de \
--cc=akong@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-stable@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).