v3 of: https://www.redhat.com/archives/libvir-list/2019-September/msg01209.html Builds just fine ;-) https://travis-ci.org/zippy2/libvirt/builds/619622349 diff to v2: - Fixed bug reported by Cole - unability to plug regular <hostdev/>-s caused by v2. Michal Prívozník (30): qemu: Explicitly add/remove /dev/vfio/vfio to/from NS/CGroups qemuDomainGetHostdevPath: Use more g_autoptr()/g_autofree qemuDomainGetHostdevPath: Don't include /dev/vfio/vfio in returned paths qemu: Drop some 'cleanup' labels virpci: Introduce and use virPCIDeviceAddressGetIOMMUGroupDev virHostdevPreparePCIDevices: Separate out function body virHostdevReAttachPCIDevices: Separate out function body virpci: Introduce virPCIDeviceAddressCopy qemuMigrationSrcIsSafe: Rework slightly schemas: Introduce disk type NVMe conf: Format and parse NVMe type disk virstoragefile: Introduce virStorageSourceChainHasNVMe domain_conf: Introduce virDomainDefHasNVMeDisk util: Introduce virNVMeDevice module virhostdev: Include virNVMeDevice module virpcimock: Introduce NVMe driver and devices virhostdevtest: Test virNVMeDevice assignment qemu: prepare NVMe devices too qemu: Take NVMe disks into account when calculating memlock limit qemu: Create NVMe disk in domain namespace qemu: Mark NVMe disks as 'need VFIO' qemu: Allow NVMe disk in CGroups virSecuritySELinuxRestoreImageLabelInt: Don't skip non-local storage qemu_capabilities: Introduce QEMU_CAPS_DRIVE_NVME qemu: Generate command line of NVMe disks qemu_monitor_text: Catch IOMMU/VFIO related errors in qemuMonitorTextAddDrive qemu: Don't leak storage perms on failure in qemuDomainAttachDiskGeneric qemu: Allow forcing VFIO when computing memlock limit qemu_hotplug: Prepare NVMe disks on hotplug virsh: Introduce nvme disk to domblklist docs/formatdomain.html.in | 57 ++- docs/schemas/domaincommon.rng | 32 ++ po/POTFILES.in | 1 + src/conf/domain_conf.c | 109 +++++ src/conf/domain_conf.h | 3 + src/libvirt_private.syms | 28 ++ src/libxl/xen_xl.c | 1 + src/qemu/qemu_block.c | 25 + src/qemu/qemu_capabilities.c | 2 + src/qemu/qemu_capabilities.h | 1 + src/qemu/qemu_cgroup.c | 203 +++++--- src/qemu/qemu_command.c | 6 +- src/qemu/qemu_domain.c | 375 +++++++++------ src/qemu/qemu_domain.h | 15 +- src/qemu/qemu_driver.c | 4 + src/qemu/qemu_hostdev.c | 71 ++- src/qemu/qemu_hostdev.h | 16 + src/qemu/qemu_hotplug.c | 31 +- src/qemu/qemu_migration.c | 30 +- src/qemu/qemu_monitor_text.c | 7 + src/qemu/qemu_process.c | 7 + src/security/security_apparmor.c | 25 +- src/security/security_dac.c | 30 ++ src/security/security_selinux.c | 51 +- src/util/Makefile.inc.am | 2 + src/util/virhostdev.c | 431 +++++++++++++++-- src/util/virhostdev.h | 37 ++ src/util/virnvme.c | 447 ++++++++++++++++++ src/util/virnvme.h | 97 ++++ src/util/virpci.c | 29 ++ src/util/virpci.h | 5 + src/util/virstoragefile.c | 71 +++ src/util/virstoragefile.h | 19 + .../caps_2.12.0.aarch64.xml | 1 + .../caps_2.12.0.ppc64.xml | 1 + .../caps_2.12.0.s390x.xml | 1 + .../caps_2.12.0.x86_64.xml | 1 + .../qemucapabilitiesdata/caps_3.0.0.ppc64.xml | 1 + .../caps_3.0.0.riscv32.xml | 1 + .../caps_3.0.0.riscv64.xml | 1 + .../qemucapabilitiesdata/caps_3.0.0.s390x.xml | 1 + .../caps_3.0.0.x86_64.xml | 1 + .../qemucapabilitiesdata/caps_3.1.0.ppc64.xml | 1 + .../caps_3.1.0.x86_64.xml | 1 + .../caps_4.0.0.aarch64.xml | 1 + .../qemucapabilitiesdata/caps_4.0.0.ppc64.xml | 1 + .../caps_4.0.0.riscv32.xml | 1 + .../caps_4.0.0.riscv64.xml | 1 + .../qemucapabilitiesdata/caps_4.0.0.s390x.xml | 1 + .../caps_4.0.0.x86_64.xml | 1 + .../caps_4.1.0.x86_64.xml | 1 + .../caps_4.2.0.aarch64.xml | 1 + .../qemucapabilitiesdata/caps_4.2.0.ppc64.xml | 1 + .../qemucapabilitiesdata/caps_4.2.0.s390x.xml | 1 + .../caps_4.2.0.x86_64.xml | 1 + tests/qemumemlocktest.c | 2 +- .../disk-nvme.x86_64-latest.args | 63 +++ tests/qemuxml2argvdata/disk-nvme.xml | 63 +++ tests/qemuxml2argvtest.c | 1 + tests/qemuxml2xmloutdata/disk-nvme.xml | 1 + tests/qemuxml2xmltest.c | 1 + tests/virhostdevtest.c | 97 ++++ tests/virpcimock.c | 3 + tests/virpcitestdata/0000-01-00.0.config | Bin 0 -> 4096 bytes tests/virpcitestdata/0000-02-00.0.config | Bin 0 -> 4096 bytes tools/virsh-domain-monitor.c | 31 +- 66 files changed, 2240 insertions(+), 312 deletions(-) create mode 100644 src/util/virnvme.c create mode 100644 src/util/virnvme.h create mode 100644 tests/qemuxml2argvdata/disk-nvme.x86_64-latest.args create mode 100644 tests/qemuxml2argvdata/disk-nvme.xml create mode 120000 tests/qemuxml2xmloutdata/disk-nvme.xml create mode 100644 tests/virpcitestdata/0000-01-00.0.config create mode 100644 tests/virpcitestdata/0000-02-00.0.config -- 2.23.0 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list