Re: [Qemu-devel] [PATCH] qdev-monitor: device_add crashes on non-device driver name, fix
Ping? arm...@redhat.com writes: From: Markus Armbruster arm...@redhat.com Watch this: $ upstream-qemu -nodefaults -S -display none -monitor stdio QEMU 1.7.50 monitor - type 'help' for more information (qemu) device_add rng-egd /work/armbru/qemu/qdev-monitor.c:491:qdev_device_add: Object 0x2089b00 is not an instance of type device Aborted (core dumped) Crashes because rng-egd exists, but isn't a subtype of TYPE_DEVICE. Broken in commit 18b6dad. Cc: qemu-sta...@nongnu.org Signed-off-by: Markus Armbruster arm...@redhat.com --- qdev-monitor.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/qdev-monitor.c b/qdev-monitor.c index dc37a43..90a0cea 100644 --- a/qdev-monitor.c +++ b/qdev-monitor.c @@ -477,7 +477,7 @@ DeviceState *qdev_device_add(QemuOpts *opts) } } -if (!oc) { +if (!object_class_dynamic_cast(oc, TYPE_DEVICE)) { qerror_report(QERR_INVALID_PARAMETER_VALUE, driver, device type); return NULL; }
Re: [Qemu-devel] [PATCH] qdev-monitor: device_add crashes on non-device driver name, fix
Am 18.12.2013 15:54, schrieb Markus Armbruster: Ping? Already queued on qom-next: https://github.com/afaerber/qemu-cpu/commits/qom-next Sorry, did the patch processing offline on a train. ;) Thanks, Andreas arm...@redhat.com writes: From: Markus Armbruster arm...@redhat.com Watch this: $ upstream-qemu -nodefaults -S -display none -monitor stdio QEMU 1.7.50 monitor - type 'help' for more information (qemu) device_add rng-egd /work/armbru/qemu/qdev-monitor.c:491:qdev_device_add: Object 0x2089b00 is not an instance of type device Aborted (core dumped) Crashes because rng-egd exists, but isn't a subtype of TYPE_DEVICE. Broken in commit 18b6dad. Cc: qemu-sta...@nongnu.org Signed-off-by: Markus Armbruster arm...@redhat.com --- qdev-monitor.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/qdev-monitor.c b/qdev-monitor.c index dc37a43..90a0cea 100644 --- a/qdev-monitor.c +++ b/qdev-monitor.c @@ -477,7 +477,7 @@ DeviceState *qdev_device_add(QemuOpts *opts) } } -if (!oc) { +if (!object_class_dynamic_cast(oc, TYPE_DEVICE)) { qerror_report(QERR_INVALID_PARAMETER_VALUE, driver, device type); return NULL; } -- SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg
Re: [Qemu-devel] [PATCH] qdev-monitor: device_add crashes on non-device driver name, fix
Andreas Färber afaer...@suse.de writes: Am 18.12.2013 15:54, schrieb Markus Armbruster: Ping? Already queued on qom-next: https://github.com/afaerber/qemu-cpu/commits/qom-next Sorry, did the patch processing offline on a train. ;) No problem thanks!
Re: [Qemu-devel] [PATCH] qdev-monitor: device_add crashes on non-device driver name, fix
Am 28.11.2013 17:02, schrieb arm...@redhat.com: From: Markus Armbruster arm...@redhat.com Watch this: $ upstream-qemu -nodefaults -S -display none -monitor stdio QEMU 1.7.50 monitor - type 'help' for more information (qemu) device_add rng-egd /work/armbru/qemu/qdev-monitor.c:491:qdev_device_add: Object 0x2089b00 is not an instance of type device Aborted (core dumped) Crashes because rng-egd exists, but isn't a subtype of TYPE_DEVICE. Broken in commit 18b6dad. Thanks for catching this! Cc: qemu-sta...@nongnu.org Signed-off-by: Markus Armbruster arm...@redhat.com --- qdev-monitor.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/qdev-monitor.c b/qdev-monitor.c index dc37a43..90a0cea 100644 --- a/qdev-monitor.c +++ b/qdev-monitor.c @@ -477,7 +477,7 @@ DeviceState *qdev_device_add(QemuOpts *opts) } } -if (!oc) { +if (!object_class_dynamic_cast(oc, TYPE_DEVICE)) { Are you sure we don't need !oc || !object_class_dynamic_cast(oc, ...)? Regards, Andreas qerror_report(QERR_INVALID_PARAMETER_VALUE, driver, device type); return NULL; } -- SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg
[Qemu-devel] [PATCH] qdev-monitor: device_add crashes on non-device driver name, fix
From: Markus Armbruster arm...@redhat.com Watch this: $ upstream-qemu -nodefaults -S -display none -monitor stdio QEMU 1.7.50 monitor - type 'help' for more information (qemu) device_add rng-egd /work/armbru/qemu/qdev-monitor.c:491:qdev_device_add: Object 0x2089b00 is not an instance of type device Aborted (core dumped) Crashes because rng-egd exists, but isn't a subtype of TYPE_DEVICE. Broken in commit 18b6dad. Cc: qemu-sta...@nongnu.org Signed-off-by: Markus Armbruster arm...@redhat.com --- qdev-monitor.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/qdev-monitor.c b/qdev-monitor.c index dc37a43..90a0cea 100644 --- a/qdev-monitor.c +++ b/qdev-monitor.c @@ -477,7 +477,7 @@ DeviceState *qdev_device_add(QemuOpts *opts) } } -if (!oc) { +if (!object_class_dynamic_cast(oc, TYPE_DEVICE)) { qerror_report(QERR_INVALID_PARAMETER_VALUE, driver, device type); return NULL; } -- 1.8.1.4
Re: [Qemu-devel] [PATCH] qdev-monitor: device_add crashes on non-device driver name, fix
Andreas Färber afaer...@suse.de writes: Am 28.11.2013 17:02, schrieb arm...@redhat.com: From: Markus Armbruster arm...@redhat.com Watch this: $ upstream-qemu -nodefaults -S -display none -monitor stdio QEMU 1.7.50 monitor - type 'help' for more information (qemu) device_add rng-egd /work/armbru/qemu/qdev-monitor.c:491:qdev_device_add: Object 0x2089b00 is not an instance of type device Aborted (core dumped) Crashes because rng-egd exists, but isn't a subtype of TYPE_DEVICE. Broken in commit 18b6dad. Thanks for catching this! Cc: qemu-sta...@nongnu.org Signed-off-by: Markus Armbruster arm...@redhat.com --- qdev-monitor.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/qdev-monitor.c b/qdev-monitor.c index dc37a43..90a0cea 100644 --- a/qdev-monitor.c +++ b/qdev-monitor.c @@ -477,7 +477,7 @@ DeviceState *qdev_device_add(QemuOpts *opts) } } -if (!oc) { +if (!object_class_dynamic_cast(oc, TYPE_DEVICE)) { Are you sure we don't need !oc || !object_class_dynamic_cast(oc, ...)? Yes. First thing object_class_dynamic_cast() does is if (!class) { return NULL; } Makes sense to me. [...]