[libvirt] [PATCH 00/18] Enhance virpcimock and test VFIO instead of KVM

Daniel Henrique Barboza danielhb413 at gmail.com
Wed Aug 14 15:14:39 UTC 2019


I've run make check with each individual patch, and everything
seems fine in my environment.

For all patches:

Tested-by: Daniel Henrique Barboza <danielhb413 at gmail.com>


I'll see if I can drop some code reviews later on.


Thanks,


DHB

On 8/14/19 8:57 AM, Michal Privoznik wrote:
> Kernel structure looks slightly different than what virpcimock creates.
> This did not use to be a problem, because we are testing KVM device
> assignment even though majority of systems we run on (if not all of
> them) use VFIO assignment.
>
> In order to switch our test suite (mainly virhostdevtest and virpcitest)
> to test VFIO assignment, the virpcimock must be fixed. Firstly, it needs
> to create symlinks under /sys/kernel/iommu_groups/... directories (patch
> 13/18) so that virhostdev module can iterate over them. Secondly, it
> needs to create 'driver_override' file (which exists since
> kernel-3.16.0) so that the virtual environment the mock creates matches
> real up to date systems (patch 03/18).
>
> Funny thing is, that enhancing the mock uncovered a bug we had (fix is
> in 15/18) and also one latent bug (14/18).
>
>
> As usual, these patches can be found on my github too:
>
>    https://github.com/zippy2/libvirt/tree/virpcimock
>
> and just for the fun of it, here's the latest travis build of that
> branch:
>
>    https://travis-ci.org/zippy2/libvirt/builds/571752953
>
>
> Michal Prívozník (18):
>    virpcimock: Move actions checking one level up
>    Revert "virpcitest: Test virPCIDeviceDetach failure"
>    virpcimock: Create driver_override file in device dirs
>    virpcimock: Drop needless typecast
>    virpcimock: Use VIR_AUTOFREE()
>    virpcimock: Eliminate use of @fakesysfspcidir
>    virpcimock: Rename @fakesysfspcidir
>    virpcimock: Create devices/ and drivers/ under /sys/bus/pci upfront
>    virpcimock: Introduce and use pci_device_get_path()
>    virpcimock: Introduce and use pci_driver_get_path()
>    virpcimock: Store PCI address as ints not string
>    virpcimock: Create PCI devices under /sys/devices/pci*
>    virpcimock: Create symlink in /sys/kernel/iommu_groups/N/devices dir
>    virhostdev: Check driver name too in virHostdevIsPCINodeDeviceUsed()
>    virhostdev: Unify virHostdevPreparePCIDevices behaviour for KVM and
>      VFIO cases
>    qemuxml2argvtest: Switch to modern vfio backend
>    virhostdevtest: Use modern VFIO
>    virpcitest: Use modern VFIO
>
>   src/util/virhostdev.c                         |  26 +-
>   .../hostdev-pci-address-device.args           |   2 +-
>   .../qemuxml2argvdata/hostdev-pci-address.args |   2 +-
>   .../net-hostdev-bootorder.args                |   3 +-
>   .../net-hostdev-multidomain.args              |   2 +-
>   tests/qemuxml2argvdata/net-hostdev.args       |   2 +-
>   tests/qemuxml2argvdata/pci-rom.args           |   4 +-
>   tests/qemuxml2argvtest.c                      |  14 +-
>   tests/virhostdevtest.c                        |   4 +-
>   tests/virpcimock.c                            | 394 ++++++++++++------
>   tests/virpcitest.c                            |  48 +--
>   11 files changed, 304 insertions(+), 197 deletions(-)
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20190814/7e5a9ea0/attachment-0001.htm>


More information about the libvir-list mailing list