diff options
author | Jason Andryuk <jandryuk@gmail.com> | 2020-06-24 08:19:39 -0400 |
---|---|---|
committer | Anthony PERARD <anthony.perard@citrix.com> | 2020-07-10 13:49:16 +0100 |
commit | 104a7f4e1355493175b0ad6f49c524ee449c16f7 (patch) | |
tree | 70aaee3751b228e00ee6e2fc3ffc9b782f6a8cfe /fsdev | |
parent | b6d7e9b66f59ca6ebc6e9b830cd5e7bf849d31cf (diff) | |
download | qemu-104a7f4e1355493175b0ad6f49c524ee449c16f7.zip qemu-104a7f4e1355493175b0ad6f49c524ee449c16f7.tar.gz qemu-104a7f4e1355493175b0ad6f49c524ee449c16f7.tar.bz2 |
xen: Fix xen-legacy-backend qdev types
xen-sysdev is a TYPE_SYS_BUS_DEVICE. bus_type should not be changed so
that it can plug into the System bus. Otherwise this assert triggers:
qemu-system-i386: hw/core/qdev.c:102: qdev_set_parent_bus: Assertion
`dc->bus_type && object_dynamic_cast(OBJECT(bus), dc->bus_type)'
failed.
TYPE_XENBACKEND attaches to TYPE_XENSYSBUS, so its class_init needs to
be set accordingly to attach the qdev. Otherwise the following assert
triggers:
qemu-system-i386: hw/core/qdev.c:102: qdev_set_parent_bus: Assertion
`dc->bus_type && object_dynamic_cast(OBJECT(bus), dc->bus_type)'
failed.
TYPE_XENBACKEND is not a subclass of XEN_XENSYSDEV, so it's parent
is just TYPE_DEVICE. Change that.
Signed-off-by: Jason Andryuk <jandryuk@gmail.com>
Acked-by: Paul Durrant <pdurrant@amazon.com>
Fixes: 81cb05732efb ("qdev: Assert devices are plugged into a bus that can take them")
Message-Id: <20200624121939.10282-1-jandryuk@gmail.com>
Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
Diffstat (limited to 'fsdev')
0 files changed, 0 insertions, 0 deletions