All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 0/7] vfio/type1: Add support for valid iova list management
@ 2018-03-15 16:35 ` Shameer Kolothum
  0 siblings, 0 replies; 63+ messages in thread
From: Shameer Kolothum @ 2018-03-15 16:35 UTC (permalink / raw)
  To: alex.williamson, eric.auger, pmorel
  Cc: kvm, linux-kernel, iommu, linuxarm, john.garry, xuwei5, Shameer Kolothum

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.


v4 --> v5
Rebased to next-20180315.
 
 -Incorporated the corner case bug fix suggested by Alex to patch #5.
 -Based on suggestions by Alex and Robin, added patch#7. This
  moves the PCI window  reservation back in to DMA specific path.
  This is to fix the issue reported by Eric[1].

Note:
The patch #7 has dependency with [2][3]

1. https://patchwork.kernel.org/patch/10232043/
2. https://patchwork.kernel.org/patch/10216553/
3. https://patchwork.kernel.org/patch/10216555/

v3 --> v4
 Addressed comments received for v3.
 -dma_addr_t instead of phys_addr_t
 -LIST_HEAD() usage.
 -Free up iova_copy list in case of error.
 -updated logic in filling the iova caps info(patch #5)

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 (2):
  vfio/type1: Add IOVA range capability support
  iommu/dma: Move PCI window region reservation back into dma specific
    path.

Shameerali Kolothum Thodi (5):
  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: remove duplicate retrieval of reserved regions

 drivers/iommu/dma-iommu.c       |  54 ++---
 drivers/vfio/vfio_iommu_type1.c | 497 +++++++++++++++++++++++++++++++++++++++-
 include/uapi/linux/vfio.h       |  23 ++
 3 files changed, 533 insertions(+), 41 deletions(-)

-- 
2.7.4

^ permalink raw reply	[flat|nested] 63+ messages in thread

end of thread, other threads:[~2018-03-28 13:41 UTC | newest]

Thread overview: 63+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-03-15 16:35 [PATCH v5 0/7] vfio/type1: Add support for valid iova list management Shameer Kolothum
2018-03-15 16:35 ` Shameer Kolothum
2018-03-15 16:35 ` [PATCH v5 1/7] vfio/type1: Introduce iova list and add iommu aperture validity check Shameer Kolothum
2018-03-15 16:35   ` Shameer Kolothum
2018-03-15 16:35   ` Shameer Kolothum
2018-03-15 16:35 ` [PATCH v5 2/7] vfio/type1: Check reserve region conflict and update iova list Shameer Kolothum
2018-03-15 16:35   ` Shameer Kolothum
2018-03-19  7:51   ` Tian, Kevin
2018-03-19  7:51     ` Tian, Kevin
2018-03-19 10:55     ` Shameerali Kolothum Thodi
2018-03-19 10:55       ` Shameerali Kolothum Thodi
2018-03-19 10:55       ` Shameerali Kolothum Thodi
2018-03-19 12:16       ` Tian, Kevin
2018-03-19 12:16         ` Tian, Kevin
2018-03-19 12:16         ` Tian, Kevin
2018-03-20 22:37     ` Alex Williamson
2018-03-20 22:37       ` Alex Williamson
2018-03-21  3:30       ` Tian, Kevin
2018-03-21  3:30         ` Tian, Kevin
2018-03-21 16:31         ` Alex Williamson
2018-03-21 16:31           ` Alex Williamson
2018-03-22  9:15           ` Shameerali Kolothum Thodi
2018-03-22  9:15             ` Shameerali Kolothum Thodi
2018-03-22  9:15             ` Shameerali Kolothum Thodi
2018-03-15 16:35 ` [PATCH v5 3/7] vfio/type1: Update iova list on detach Shameer Kolothum
2018-03-15 16:35   ` Shameer Kolothum
2018-03-15 16:35   ` Shameer Kolothum
2018-03-15 16:35 ` [PATCH v5 4/7] vfio/type1: check dma map request is within a valid iova range Shameer Kolothum
2018-03-15 16:35   ` Shameer Kolothum
2018-03-15 16:35   ` Shameer Kolothum
2018-03-15 16:35 ` [PATCH v5 5/7] vfio/type1: Add IOVA range capability support Shameer Kolothum
2018-03-15 16:35   ` Shameer Kolothum
2018-03-15 16:35   ` Shameer Kolothum
2018-03-15 16:35 ` [PATCH v5 6/7] vfio/type1: remove duplicate retrieval of reserved regions Shameer Kolothum
2018-03-15 16:35   ` Shameer Kolothum
2018-03-15 16:35 ` [PATCH v5 7/7] iommu/dma: Move PCI window region reservation back into dma specific path Shameer Kolothum
2018-03-15 16:35   ` Shameer Kolothum
2018-03-15 16:35   ` Shameer Kolothum
2018-03-22 16:21   ` Alex Williamson
2018-03-22 16:21     ` Alex Williamson
2018-03-22 17:22     ` Robin Murphy
2018-03-22 17:22       ` Robin Murphy
2018-03-23  8:57       ` Shameerali Kolothum Thodi
2018-03-23  8:57         ` Shameerali Kolothum Thodi
2018-03-23  8:57         ` Shameerali Kolothum Thodi
2018-03-28 13:41         ` Shameerali Kolothum Thodi
2018-03-28 13:41           ` Shameerali Kolothum Thodi
2018-03-28 13:41           ` Shameerali Kolothum Thodi
2018-03-19  8:28 ` [PATCH v5 0/7] vfio/type1: Add support for valid iova list management Tian, Kevin
2018-03-19  8:28   ` Tian, Kevin
2018-03-19 10:54   ` Shameerali Kolothum Thodi
2018-03-19 10:54     ` Shameerali Kolothum Thodi
2018-03-19 10:54     ` Shameerali Kolothum Thodi
2018-03-19 12:12     ` Tian, Kevin
2018-03-19 12:12       ` Tian, Kevin
2018-03-19 12:12       ` Tian, Kevin
2018-03-20 22:55   ` Alex Williamson
2018-03-20 22:55     ` Alex Williamson
2018-03-21  3:28     ` Tian, Kevin
2018-03-21  3:28       ` Tian, Kevin
2018-03-21 17:11       ` Alex Williamson
2018-03-22  9:10         ` Tian, Kevin
2018-03-22  9:10           ` Tian, Kevin

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.