Changes from v3: - Instead of adding pci allocation code to utils/virpci.[ch], create new files conf/domain_addr.[ch] to contain only domain device addresses management Changes from v2: - Base on PCI allocation code from Qemu driver Changes from v1: - Reserve slot 1 for LPC PCI-ISA bridge, used by console device - Respect addresses provided by user in domain xml file - Fix tests so 'make check' passes Roman Bogorodskiy (3): qemu: extract PCI handling structs qemu: extract common PCI handling functions bhyve: implement PCI address allocation po/POTFILES.in | 2 + src/Makefile.am | 5 + src/bhyve/bhyve_command.c | 142 ++-- src/bhyve/bhyve_device.c | 174 +++++ src/bhyve/bhyve_device.h | 38 ++ src/bhyve/bhyve_domain.c | 75 ++ src/bhyve/bhyve_domain.h | 39 ++ src/bhyve/bhyve_driver.c | 12 +- src/conf/domain_addr.c | 566 ++++++++++++++++ src/conf/domain_addr.h | 149 ++++ src/libvirt_private.syms | 17 + src/qemu/qemu_command.c | 754 +++------------------ src/qemu/qemu_command.h | 49 +- src/qemu/qemu_domain.c | 3 +- src/qemu/qemu_domain.h | 6 +- src/qemu/qemu_hotplug.c | 8 +- src/qemu/qemu_process.c | 2 +- .../bhyvexml2argvdata/bhyvexml2argv-acpiapic.args | 2 +- tests/bhyvexml2argvdata/bhyvexml2argv-acpiapic.xml | 2 + tests/bhyvexml2argvdata/bhyvexml2argv-base.args | 2 +- tests/bhyvexml2argvdata/bhyvexml2argv-base.xml | 2 + tests/bhyvexml2argvdata/bhyvexml2argv-console.args | 4 +- tests/bhyvexml2argvdata/bhyvexml2argv-console.xml | 2 + .../bhyvexml2argv-disk-virtio.args | 2 +- .../bhyvexml2argv-disk-virtio.xml | 2 + tests/bhyvexml2argvdata/bhyvexml2argv-macaddr.args | 2 +- tests/bhyvexml2argvdata/bhyvexml2argv-macaddr.xml | 2 + tests/bhyvexml2argvdata/bhyvexml2argv-serial.args | 4 +- tests/bhyvexml2argvdata/bhyvexml2argv-serial.xml | 2 + 29 files changed, 1287 insertions(+), 782 deletions(-) create mode 100644 src/bhyve/bhyve_device.c create mode 100644 src/bhyve/bhyve_device.h create mode 100644 src/bhyve/bhyve_domain.c create mode 100644 src/bhyve/bhyve_domain.h create mode 100644 src/conf/domain_addr.c create mode 100644 src/conf/domain_addr.h -- 1.9.0 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list