pci-sim packages the fake_pci_sriov Linux kernel module as an
out-of-tree module for DevStack and CI environments. The module creates fake
SR-IOV PCI devices for Nova/libvirt/QEMU PCI passthrough testing without
requiring physical SR-IOV hardware.
$ make check-kernel-config
$ make
$ sudo modprobe vfio-pci
$ sudo insmod pci-sim/fake_pci_sriov.ko
$ sudo pci-sim/test_pci_sim_loopback.py
$ sudo pci-sim/cleanup_fake_pci_sriov.shA minimal sample is provided at devstack/local.conf.sample. Add the plugin
to local.conf using the path where this repository is checked out, before
the Cyborg plugin, for example:
enable_plugin cyborg-extra /opt/stack/cyborg-extra enable_plugin cyborg https://opendev.org/openstack/cyborg
The plugin builds and loads the module by default. Use PCI_SIM_NUM_PFS and
PCI_SIM_NUM_VFS in local.conf to choose the fake PCI topology. The
module is removed during unstack.sh.