The .bind_iommufd op of vfio emulated devices are either empty or does nothing. This is different with the vfio physical devices, to add vfio device cdev, need to make them act the same. This series first makes the .bind_iommufd op of vfio emulated devices to create iommufd_access, this introduces a new iommufd API. Then let the driver that does not provide .bind_iommufd op to use the vfio emulated iommufd op set. Thanks, Yi Liu Nicolin Chen (1): iommufd: Create access in vfio_iommufd_emulated_bind() Yi Liu (4): vfio-iommufd: No need to record iommufd_ctx in vfio_device vfio-iommufd: Make vfio_iommufd_emulated_bind() return iommufd_access ID Samples/mdev: Uses the vfio emulated iommufd ops set in the mdev sample drivers vfio: Check the presence for iommufd callbacks in __vfio_register_dev() drivers/iommu/iommufd/device.c | 107 ++++++++++++++++++------ drivers/iommu/iommufd/iommufd_private.h | 1 + drivers/iommu/iommufd/selftest.c | 8 +- drivers/vfio/iommufd.c | 35 ++++---- drivers/vfio/vfio_main.c | 5 +- include/linux/iommufd.h | 5 +- include/linux/vfio.h | 1 - samples/vfio-mdev/mbochs.c | 3 + samples/vfio-mdev/mdpy.c | 3 + samples/vfio-mdev/mtty.c | 3 + 10 files changed, 119 insertions(+), 52 deletions(-) -- 2.34.1