We want to use more than 200+ device. Libvirt does not use multi function PCI device and PCI-to-PCI bridge. So we can not use more than 200+ device if it's a PCI device or it's controller is a PCI device. This patchset adds the support of multi function PCI device. It does not support to hot plug/unplug multi function PCI device. Change log: v1 -> v2: 1. split the patch, and it will be easily to review 2. Auto assign a slot not a function if user does not specify the address. Wen Congyang (7): check whether qemu supports multi function PCI device prevent hot unplugging multi function PCI device the key of hash table should include the function value Reimplement qemuDomainPCIAddressReserveSlot(): reserve all functions in the slot assign the whole slot to the PCI device that has no address the hotplugged PCI device should use the whole slot support multifunction PCI device src/conf/domain_conf.c | 3 + src/qemu/qemu_capabilities.c | 5 ++ src/qemu/qemu_capabilities.h | 1 + src/qemu/qemu_command.c | 151 +++++++++++++++++++++++++++++++++++++----- src/qemu/qemu_command.h | 5 ++ src/qemu/qemu_hotplug.c | 76 +++++++++++++++++++-- tests/qemuhelptest.c | 3 +- 7 files changed, 218 insertions(+), 26 deletions(-) -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list