On 07/17/2015 07:27 AM, Pavel Fedin wrote: > Virt machine in qemu since v2.3.0 has PCI generic host controller, and > can use PCI devices. This provides performance improvement as well as > vhost-net with irqfd support for virtio-net. However libvirt currently > does not allow ARM virt machine to have PCI devices. This patchset adds > the necessary support. > > Changes since v4: > - Rebased onto current master > - Added possibility to plug virtio-net-pci adapter directly into PCIe bus. > This is necessary for irqfds to work in qemu. > Changes since v3: > - Capability is based not on qemu version but on support of "gpex-pcihost" > device by qemu > - Added a workaround, allowing to pass "make check". The problem is that > test suite does not build capabilities cache. Unfortunately this means > that correct unit-test for the new functionality currently cannot be > written. Test suite framework needs to be improved. > Changes since v2: > Complete rework, use different approach > - Correctly model PCI Express bus on the machine. It is now possible to > explicitly specify <address-type='pci'> with attributes. This allows to > attach not only virtio, but any other PCI device to the model. > - Default is not changed and still mmio, for backwards compatibility with > existing installations. PCI bus has to be explicitly specified. > - Check for the capability in correct place, in v2 it actually did not > work > Changes since v1: > - Added capability based on qemu version number > - Recognize also "virt-" prefix > > Pavel Fedin (4): > qemu: Introduce QEMU_CAPS_OBJECT_GPEX > Add PCI-Express root to ARM virt machine > Build correct command line for PCI NICs on ARM > Allow to plug virtio-net-pci into PCIe slot I was a bit confused about the patches that landed; I see now that they only add a PCI controller for modern -M virt, but don't change the virtio defaults to use it. This is good, and in my brief testing doesn't cause any regressions with current virt-manager. We can figure out later if/how to change the bus=virtio or model=virtio default to use PCI instead of virtio-mmio But yeah, we need to figure out that test case issue. There's already a regression with git head: $ sudo virsh create test-aarch64.xml error: Failed to create domain from test-aarch64.xml error: internal error: autogenerated dmi-to-pci-bridge options not set XML attached. I'm guessing this is one of Laine's patches, CCd - Cole
<domain type="qemu"> <name>rhel7.0-aarch64-2</name> <uuid>94b59510-6a9f-4c08-bf6b-f906642a5473</uuid> <memory>1048576</memory> <currentMemory>1048576</currentMemory> <vcpu>1</vcpu> <os> <type arch="aarch64" machine="virt">hvm</type> <loader readonly="yes" type="pflash">/usr/share/edk2.git/aarch64/QEMU_EFI-pflash.raw</loader> <boot dev="cdrom"/> <boot dev="hd"/> </os> <cpu mode="custom" match="exact"> <model>cortex-a57</model> </cpu> <clock offset="utc"/> <on_poweroff>destroy</on_poweroff> <on_reboot>destroy</on_reboot> <on_crash>destroy</on_crash> <devices> <emulator>/bin/qemu-system-aarch64</emulator> </devices> </domain>
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list