summaryrefslogtreecommitdiff
path: root/tools/testing/selftests/vfio/lib/include/libvfio
diff options
context:
space:
mode:
authorRaghavendra Rao Ananta <rananta@google.com>2026-05-05 21:28:35 +0000
committerAlex Williamson <alex@shazbot.org>2026-05-20 11:54:10 -0600
commit60ab36e5d02a8e50e1edce24bff58507b514b94e (patch)
treea83d581dafce8e009a19846001066e50168ad1a8 /tools/testing/selftests/vfio/lib/include/libvfio
parente65f1bf8a2db8d68df88d304d1cd801b7c26031d (diff)
downloadlinux-60ab36e5d02a8e50e1edce24bff58507b514b94e.tar.gz
linux-60ab36e5d02a8e50e1edce24bff58507b514b94e.zip
vfio: selftests: Expose more vfio_pci_device functions
Refactor and make the functions called under device initialization public. A later patch adds a test that calls these functions to validate the UAPI of SR-IOV devices. Opportunistically, to test the success and failure cases of the UAPI, split the functions dealing with VFIO_GROUP_GET_DEVICE_FD and VFIO_DEVICE_BIND_IOMMUFD into a core function and another one that asserts the ioctl. The former will be used for testing the SR-IOV UAPI, hence only export these. Signed-off-by: Raghavendra Rao Ananta <rananta@google.com> Reviewed-by: David Matlack <dmatlack@google.com> Reviewed-by: Vipin Sharma <vipinsh@google.com> Tested-by: David Matlack <dmatlack@google.com> Link: https://lore.kernel.org/r/20260505212838.1698034-6-rananta@google.com Signed-off-by: Alex Williamson <alex@shazbot.org>
Diffstat (limited to 'tools/testing/selftests/vfio/lib/include/libvfio')
-rw-r--r--tools/testing/selftests/vfio/lib/include/libvfio/vfio_pci_device.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/tools/testing/selftests/vfio/lib/include/libvfio/vfio_pci_device.h b/tools/testing/selftests/vfio/lib/include/libvfio/vfio_pci_device.h
index 2858885a89bb..898de032fed5 100644
--- a/tools/testing/selftests/vfio/lib/include/libvfio/vfio_pci_device.h
+++ b/tools/testing/selftests/vfio/lib/include/libvfio/vfio_pci_device.h
@@ -122,4 +122,11 @@ static inline bool vfio_pci_device_match(struct vfio_pci_device *device,
const char *vfio_pci_get_cdev_path(const char *bdf);
+void vfio_pci_group_setup(struct vfio_pci_device *device, const char *bdf);
+void __vfio_pci_group_get_device_fd(struct vfio_pci_device *device,
+ const char *bdf, const char *vf_token);
+void vfio_container_set_iommu(struct vfio_pci_device *device);
+void vfio_pci_cdev_open(struct vfio_pci_device *device, const char *bdf);
+int __vfio_device_bind_iommufd(int device_fd, int iommufd, const char *vf_token);
+
#endif /* SELFTESTS_VFIO_LIB_INCLUDE_LIBVFIO_VFIO_PCI_DEVICE_H */