Marcel Apfelbaum 4cae4d5aca hmp: fix regression of HMP device_del auto-completion
The commits:
 - 6a1fa9f5 (monitor: add del completion for peripheral device)
 - 66e56b13 (qdev: add qdev_build_hotpluggable_device_list helper)

cause a QEMU crash when trying to use HMP device_del auto-completion.
It can be easily reproduced by:
    <qemu-bin> -enable-kvm  ~/images/fedora.qcow2 -monitor stdio -device virtio-net-pci,id=vnet

    (qemu) device_del
    /home/mapfelba/git/upstream/qemu/hw/core/qdev.c:941:qdev_build_hotpluggable_device_list: Object 0x7f6ce04e4fe0 is not an instance of type device
    Aborted (core dumped)

The root cause is qdev_build_hotpluggable_device_list going recursively over
all peripherals and their children assuming all are devices. It doesn't work
since PCI devices have at least on child which is a memory region (bus master).

Solved by observing that all devices appear as direct children of
/machine/peripheral container. No need of going recursively
over all the children.

Signed-off-by: Marcel Apfelbaum <marcel.a@redhat.com>
Reported-by: Gal Hammer <ghammer@redhat.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Message-id: 1417002601-20799-1-git-send-email-marcel.a@redhat.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2014-11-27 14:36:20 +00:00
2014-09-18 20:02:01 +01:00
2013-04-18 13:50:53 +02:00
2014-11-14 12:15:40 +01:00
2014-11-15 13:01:44 +00:00
2014-11-15 13:01:44 +00:00
2014-11-26 12:11:27 +01:00
2014-11-02 13:30:00 +01:00
2012-09-07 09:02:44 +03:00
2014-06-16 13:24:35 +02:00
2013-09-05 09:40:31 -05:00
2014-08-29 10:46:58 +01:00
2014-06-23 11:12:28 -04:00
2013-10-11 09:34:56 -07:00
2014-09-16 11:04:09 +02:00
2013-07-23 02:41:31 +02:00
2014-10-24 12:19:11 +01:00
2014-09-26 13:37:06 -04:00
2014-09-26 13:37:06 -04:00
2013-08-12 09:15:12 -05:00
2014-11-11 09:46:46 +01:00
2014-09-26 09:34:39 +01:00
2014-11-23 12:11:29 +02:00
2014-05-24 00:07:29 +04:00
2013-10-11 09:34:56 -07:00
2014-02-17 11:57:23 -05:00
2014-10-31 11:29:01 +01:00
2014-06-05 16:10:33 +02:00
2014-11-25 18:23:54 +00:00
2013-10-11 09:34:56 -07:00
2014-07-07 10:37:40 +00:00

Read the documentation in qemu-doc.html or on http://wiki.qemu-project.org

- QEMU team
Description
Original Xbox Emulator for Windows, macOS, and Linux (Active Development)
Readme 528 MiB
Languages
C 82.5%
C++ 7%
Python 3.3%
Dylan 2.8%
Shell 1.5%
Other 2.6%