|
|
Log in / Subscribe / Register

Add iommufd ioctls to support TSM operations

From:  "Aneesh Kumar K.V (Arm)" <aneesh.kumar-AT-kernel.org>
To:  iommu-AT-lists.linux.dev, linux-kernel-AT-vger.kernel.org, kvm-AT-vger.kernel.org
Subject:  [PATCH v4 0/4] Add iommufd ioctls to support TSM operations
Date:  Mon, 27 Apr 2026 11:40:01 +0530
Message-ID:  <20260427061005.901854-1-aneesh.kumar@kernel.org>
Cc:  "Aneesh Kumar K.V (Arm)" <aneesh.kumar-AT-kernel.org>, Alexey Kardashevskiy <aik-AT-amd.com>, Bjorn Helgaas <helgaas-AT-kernel.org>, Dan Williams <dan.j.williams-AT-intel.com>, Jason Gunthorpe <jgg-AT-ziepe.ca>, Joerg Roedel <joro-AT-8bytes.org>, Jonathan Cameron <jic23-AT-kernel.org>, Kevin Tian <kevin.tian-AT-intel.com>, Nicolin Chen <nicolinc-AT-nvidia.com>, Samuel Ortiz <sameo-AT-rivosinc.com>, Steven Price <steven.price-AT-arm.com>, Suzuki K Poulose <Suzuki.Poulose-AT-arm.com>, Will Deacon <will-AT-kernel.org>, Xu Yilun <yilun.xu-AT-linux.intel.com>, Shameer Kolothum <shameerali.kolothum.thodi-AT-huawei.com>
Archive-link:  Article

This patch series adds iommufd ioctl support for TSM-related operations.
These ioctls allow VMMs to perform TSM management tasks such as bind and
unbind operations, and to handle guest requests.

Changes from v2:
https://lore.kernel.org/all/20260309111704.2330479-1-anee...
* Bump the series revision to v4 to keep it in sync with the dependent CCA DA
  patchsets. There was no v3 posting.
* Drop [PATCH v2 1/3] iommufd/viommu: Allow associating a KVM VM fd with a
  vIOMMU
* Add two new patches to associate a struct kvm * with iommufd objects:
  iommufd/device: Associate a kvm pointer to iommufd_device
  iommufd/viommu: Associate a kvm pointer to iommufd_viommu
* Address review feedback

Changes from v1:
https://lore.kernel.org/all/20250728135216.48084-8-aneesh...
* Rebase onto the latest kernel
* Address review feedback
* Drop the TSM map ioctl; the KVM prefault patch will be used instead to
  ensure that private memory is preallocated

Cc: Alexey Kardashevskiy <aik@amd.com>
Cc: Bjorn Helgaas <helgaas@kernel.org>
Cc: Dan Williams <dan.j.williams@intel.com>
Cc: Jason Gunthorpe <jgg@ziepe.ca>
Cc: Joerg Roedel <joro@8bytes.org>
Cc: Jonathan Cameron <jic23@kernel.org>
Cc: Kevin Tian <kevin.tian@intel.com>
Cc: Nicolin Chen <nicolinc@nvidia.com>
Cc: Samuel Ortiz <sameo@rivosinc.com>
Cc: Steven Price <steven.price@arm.com>
Cc: Suzuki K Poulose <Suzuki.Poulose@arm.com>
Cc: Will Deacon <will@kernel.org>
Cc: Xu Yilun <yilun.xu@linux.intel.com>
Cc: Shameer Kolothum <shameerali.kolothum.thodi@huawei.com>

Aneesh Kumar K.V (Arm) (2):
  iommufd/tsm: add vdevice TSM bind/unbind ioctl
  iommufd/vdevice: add TSM guest request ioctl

Nicolin Chen (1):
  iommufd/viommu: Associate a kvm pointer to iommufd_viommu

Shameer Kolothum (1):
  iommufd/device: Associate a kvm pointer to iommufd_device

 drivers/iommu/iommufd/Makefile          |   2 +
 drivers/iommu/iommufd/device.c          |   5 +-
 drivers/iommu/iommufd/iommufd_private.h |  17 ++++
 drivers/iommu/iommufd/main.c            |   6 ++
 drivers/iommu/iommufd/selftest.c        |   2 +-
 drivers/iommu/iommufd/tsm.c             | 109 ++++++++++++++++++++++++
 drivers/iommu/iommufd/viommu.c          |  24 +++++-
 drivers/vfio/iommufd.c                  |   2 +-
 drivers/virt/coco/tsm-core.c            |  30 +++++++
 include/linux/iommu.h                   |   1 +
 include/linux/iommufd.h                 |   5 +-
 include/linux/tsm.h                     |  42 +++++++++
 include/uapi/linux/iommufd.h            |  67 +++++++++++++++
 13 files changed, 305 insertions(+), 7 deletions(-)
 create mode 100644 drivers/iommu/iommufd/tsm.c

-- 
2.43.0




Copyright © 2026, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds