[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20220216135458.GH4160@nvidia.com>
Date: Wed, 16 Feb 2022 09:54:58 -0400
From: Jason Gunthorpe <jgg@...dia.com>
To: Lu Baolu <baolu.lu@...ux.intel.com>
Cc: Joerg Roedel <joro@...tes.org>, Stuart Yoder <stuyoder@...il.com>,
rafael@...nel.org, David Airlie <airlied@...ux.ie>,
linux-pci@...r.kernel.org,
Thierry Reding <thierry.reding@...il.com>,
Diana Craciun <diana.craciun@....nxp.com>,
Dmitry Osipenko <digetx@...il.com>,
Will Deacon <will@...nel.org>, Ashok Raj <ashok.raj@...el.com>,
Jonathan Hunter <jonathanh@...dia.com>,
Christoph Hellwig <hch@...radead.org>,
Kevin Tian <kevin.tian@...el.com>,
Chaitanya Kulkarni <kch@...dia.com>,
Alex Williamson <alex.williamson@...hat.com>,
kvm@...r.kernel.org, Bjorn Helgaas <bhelgaas@...gle.com>,
Dan Williams <dan.j.williams@...el.com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Cornelia Huck <cohuck@...hat.com>,
linux-kernel@...r.kernel.org, Li Yang <leoyang.li@....com>,
iommu@...ts.linux-foundation.org,
Jacob jun Pan <jacob.jun.pan@...el.com>,
Daniel Vetter <daniel@...ll.ch>,
Robin Murphy <robin.murphy@....com>
Subject: Re: [PATCH v1 3/8] iommu: Extend iommu_at[de]tach_device() for
multi-device groups
On Wed, Feb 16, 2022 at 02:28:09PM +0800, Lu Baolu wrote:
> It seems everyone agrees that for device assignment (where the I/O
> address is owned by the user-space application), the iommu_group-based
> APIs should always be used. Otherwise, the isolation and protection are
> not guaranteed.
This group/device split is all just driven by VFIO. There is nothing
preventing a struct device * API from being used with user-space, and
Robin has been pushing that way. With enough fixing of VFIO we can do
it.
eg the device-centric VFIO patches should be able to eventually work
entirely on an iommu device API.
> Another proposal (as suggested by Joerg) is to introduce the concept of
> "sub-group". An iommu group could have one or multiple sub-groups with
> non-aliased devices sitting in different sub-groups and use different
> domains.
I still don't see how sub groups help or really change anything here.
The API already has the concept of 'ownership' seperated from the
concept of 'attach a domain to a device'.
Ownership works on the ACS group and attach works on the 'same RID'
group.
The API can take in the struct device and select which internal group
to use based on which action is being done.
Jason
Powered by blists - more mailing lists