[PATCH v3 0/6] vfio/type1: Add support for valid iova list management

From: Shameer Kolothum
Date: Thu Feb 15 2018 - 04:47:17 EST


This series introduces an iova list associated with a vfio
iommu. The list is kept updated taking care of iommu apertures,
and reserved regions. Also this series adds checks for any conflict
with existing dma mappings whenever a new device group is attached to
the domain.

User-space can retrieve valid iova ranges using VFIO_IOMMU_GET_INFO
ioctl capability chains. Any dma map request outside the valid iova
range will be rejected.

RFCv2 --> v3
Removed RFC tag.
Addressed comments from Alex and Eric:
- Added comments to make iova list management logic more clear.
- Use of iova list copy so that original is not altered in
case of failure.

RFCv1 --> RFCv2
Addressed comments from Alex:
-Introduced IOVA list management and added checks for conflicts with
existing dma map entries during attach/detach.

Shameer Kolothum (6):
vfio/type1: Introduce iova list and add iommu aperture validity check
vfio/type1: Check reserve region conflict and update iova list
vfio/type1: Update iova list on detach
vfio/type1: check dma map request is within a valid iova range
vfio/type1: Add IOVA range capability support
vfio/type1: remove duplicate retrieval of reserved regions.

drivers/vfio/vfio_iommu_type1.c | 499 +++++++++++++++++++++++++++++++++++++++-
include/uapi/linux/vfio.h | 23 ++
2 files changed, 511 insertions(+), 11 deletions(-)

--
2.7.4