Hi,
I'm playing with a qemu-2.5.0 and pc-i440fx-2.4 machine type, and
perhaps I don't understand correctly the compat_props machinery but
there is something strange for me:
in qemu-2.5.0, hw/virtio/virtio-pci.c:
1880 DEFINE_PROP_BIT("x-disable-pcie", VirtIOPCIProxy, flags,
1881 VIRTIO_PCI_FLAG_DISABLE_PCIE_BIT, false),
So I guess a new default machine (pc-i440fx-2.5) will be defined by
default with "x-disable-pcie" set to "false".
and in qemu-2.5, include/hw/compat.h:
3
4 #define HW_COMPAT_2_4 \
5 {\
..
14 .driver = "virtio-pci",\
15 .property = "x-disable-pcie",\
16 .value = "on",\
17 },{\
So I guess a new machine pc-i440fx-2.4 created with qemu-2.5.0 will have
"x-disable-pcie" set to true (as with qemu-2.4.0 this feature is not
available).
But in this case "x-disable-pcie" is always set to "false".
So the questions are:
- do I understand correctly?
- I check "x-disable-pcie" for "virtio-*-pci" devices (virtio-net-pci,
virtio-balloon-pci, ..."), should they inherit the behavior from their
parent "virtio-pci"? (they should, as virtio-pci is an abstract device type)
My test:
- take qemu-2.5.0 (a8c40fa Update version for v2.5.0 release)
- start it with "-M pc-i440fx-2.5 -device virtio-balloon-pci -S",
"info qtree":
bus: pci.0
type PCI
dev: virtio-balloon-pci, id ""
...
x-disable-pcie = false
- start it with "-M pc-i440fx-2.4 -device virtio-balloon-pci -S",
"info qtree":
bus: pci.0
type PCI
dev: virtio-balloon-pci, id ""
...
x-disable-pcie = false
Any explanation is very welcome.
Thanks,
Laurent