[PATCH v2 00/11] Connect VFIO to IOMMUFD
Tian, Kevin
kevin.tian at intel.com
Wed Nov 9 09:03:52 UTC 2022
every mail in this series is shown thrice in lore:
https://lore.kernel.org/all/0-v2-65016290f146+33e-vfio_iommufd_jgg@nvidia.com/
not sure what caused it but it's annoying to check the conversation there.
the iommufd series doesn't have this problem.
> From: Jason Gunthorpe <jgg at nvidia.com>
> Sent: Tuesday, November 8, 2022 8:53 AM
>
> This series provides an alternative container layer for VFIO implemented
> using iommufd. This is optional, if CONFIG_IOMMUFD is not set then it will
> not be compiled in.
>
> At this point iommufd can be injected by passing in a iommfd FD to
> VFIO_GROUP_SET_CONTAINER which will use the VFIO compat layer in
> iommufd
> to obtain the compat IOAS and then connect up all the VFIO drivers as
> appropriate.
>
> This is temporary stopping point, a following series will provide a way to
> directly open a VFIO device FD and directly connect it to IOMMUFD using
> native ioctls that can expose the IOMMUFD features like hwpt, future
> vPASID and dynamic attachment.
>
> This series, in compat mode, has passed all the qemu tests we have
> available, including the test suites for the Intel GVT mdev. Aside from
> the temporary limitation with P2P memory this is belived to be fully
> compatible with VFIO.
>
> This is on github:
> https://github.com/jgunthorpe/linux/commits/vfio_iommufd
>
> It requires the iommufd series:
>
> https://lore.kernel.org/r/0-v4-0de2f6c78ed0+9d1-iommufd_jgg@nvidia.com
>
> v2:
> - Rebase to v6.1-rc3, v4 iommufd series
> - Fixup comments and commit messages from list remarks
> - Fix leaking of the iommufd for mdevs
> - New patch to fix vfio modaliases when vfio container is disabled
> - Add a dmesg once when the iommufd provided /dev/vfio/vfio is opened
> to signal that iommufd is providing this
> v1: https://lore.kernel.org/r/0-v1-4991695894d8+211-
> vfio_iommufd_jgg at nvidia.com
>
> Jason Gunthorpe (11):
> vfio: Move vfio_device driver open/close code to a function
> vfio: Move vfio_device_assign_container() into
> vfio_device_first_open()
> vfio: Rename vfio_device_assign/unassign_container()
> vfio: Move storage of allow_unsafe_interrupts to vfio_main.c
> vfio: Use IOMMU_CAP_ENFORCE_CACHE_COHERENCY for
> vfio_file_enforced_coherent()
> vfio-iommufd: Allow iommufd to be used in place of a container fd
> vfio-iommufd: Support iommufd for physical VFIO devices
> vfio-iommufd: Support iommufd for emulated VFIO devices
> vfio: Move container related MODULE_ALIAS statements into container.c
> vfio: Make vfio_container optionally compiled
> iommufd: Allow iommufd to supply /dev/vfio/vfio
>
> drivers/gpu/drm/i915/gvt/kvmgt.c | 3 +
> drivers/iommu/iommufd/Kconfig | 12 +
> drivers/iommu/iommufd/main.c | 36 ++
> drivers/s390/cio/vfio_ccw_ops.c | 3 +
> drivers/s390/crypto/vfio_ap_ops.c | 3 +
> drivers/vfio/Kconfig | 36 +-
> drivers/vfio/Makefile | 5 +-
> drivers/vfio/container.c | 141 ++------
> drivers/vfio/fsl-mc/vfio_fsl_mc.c | 3 +
> drivers/vfio/iommufd.c | 157 ++++++++
> .../vfio/pci/hisilicon/hisi_acc_vfio_pci.c | 6 +
> drivers/vfio/pci/mlx5/main.c | 3 +
> drivers/vfio/pci/vfio_pci.c | 3 +
> drivers/vfio/platform/vfio_amba.c | 3 +
> drivers/vfio/platform/vfio_platform.c | 3 +
> drivers/vfio/vfio.h | 100 +++++-
> drivers/vfio/vfio_iommu_type1.c | 5 +-
> drivers/vfio/vfio_main.c | 338 ++++++++++++++----
> include/linux/vfio.h | 39 ++
> 19 files changed, 700 insertions(+), 199 deletions(-)
> create mode 100644 drivers/vfio/iommufd.c
>
>
> base-commit: ca3067007d4f2aa7f3a5375bd256839e08a09453
> --
> 2.38.1
More information about the dri-devel
mailing list