[libvirt] [PATCH 3/3] conf: restrict where dmi-to-pci-bridge can be connected

Andrea Bolognani abologna at redhat.com
Mon Aug 8 18:25:07 UTC 2016


On Fri, 2016-08-05 at 23:01 -0400, Laine Stump wrote:
> libvirt had allowed a dmi-to-pci-bridge to be plugged in anywhere a
> normal PCIe endpoint can be connected, but this is wrong - it will
> only work if it's plugged into pcie-root (the PCIe root complex) or a
> pcie-expander-bus (the qemu device pxb-pcie). This patch adjusts the
> connection flags accordingly.
> 
> Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1363648

Doesn't

  https://bugzilla.redhat.com/1363648#c4

tell us that we *need* to use a pcie-root-port when plugging
stuff into a pcie-expander-bus?

Looks good otherwise, but I'd like to have Marcel's confirm
that plugging a dmi-to-pci-bridge directly into a
pcie-expander-bus is something we want before you push it.

> diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c
> index d594836..933f9be 100644
> --- a/tests/qemuxml2argvtest.c
> +++ b/tests/qemuxml2argvtest.c
> @@ -1631,6 +1631,22 @@ mymain(void)
>              QEMU_CAPS_PCI_MULTIFUNCTION, QEMU_CAPS_ICH9_USB_EHCI1,
>              QEMU_CAPS_DEVICE_VIDEO_PRIMARY,
>              QEMU_CAPS_VGA_QXL, QEMU_CAPS_DEVICE_QXL);
> +    DO_TEST_PARSE_ERROR("q35-dmi-bad-address1",
> +            QEMU_CAPS_DEVICE_PCI_BRIDGE,
> +            QEMU_CAPS_DEVICE_DMI_TO_PCI_BRIDGE,
> +            QEMU_CAPS_DEVICE_IOH3420,
> +            QEMU_CAPS_ICH9_AHCI,
> +            QEMU_CAPS_PCI_MULTIFUNCTION, QEMU_CAPS_ICH9_USB_EHCI1,
> +            QEMU_CAPS_DEVICE_VIDEO_PRIMARY,
> +            QEMU_CAPS_VGA_QXL, QEMU_CAPS_DEVICE_QXL);
> +    DO_TEST_PARSE_ERROR("q35-dmi-bad-address2",
> +            QEMU_CAPS_DEVICE_PCI_BRIDGE,
> +            QEMU_CAPS_DEVICE_DMI_TO_PCI_BRIDGE,
> +            QEMU_CAPS_DEVICE_IOH3420,
> +            QEMU_CAPS_ICH9_AHCI,
> +            QEMU_CAPS_PCI_MULTIFUNCTION, QEMU_CAPS_ICH9_USB_EHCI1,
> +            QEMU_CAPS_DEVICE_VIDEO_PRIMARY,
> +            QEMU_CAPS_VGA_QXL, QEMU_CAPS_DEVICE_QXL);
>      DO_TEST("q35-pm-disable",
>              QEMU_CAPS_DEVICE_PCI_BRIDGE,
>              QEMU_CAPS_DEVICE_DMI_TO_PCI_BRIDGE, QEMU_CAPS_ICH9_AHCI,

Can you maybe trim the capabilities a bit? QEMU_CAPS_VGA_QXL
and friends look like they're hardly a requirement for a test
case about PCI bridges.

Of course I'm okay with this if you're already planning to
post a follow-up patch that trims the capabilities of all
q35-* test cases ;)

-- 
Andrea Bolognani / Red Hat / Virtualization




More information about the libvir-list mailing list