Messages in this thread | | | Date | Mon, 14 Feb 2022 08:45:18 -0400 | From | Jason Gunthorpe <> | Subject | Re: [PATCH v1 1/8] iommu: Add iommu_group_replace_domain() |
| |
On Mon, Feb 14, 2022 at 12:09:36PM +0000, Robin Murphy wrote: > On 2022-01-06 02:20, Lu Baolu wrote: > > Expose an interface to replace the domain of an iommu group for frameworks > > like vfio which claims the ownership of the whole iommu group. > > But if the underlying point is the new expectation that > iommu_{attach,detach}_device() operate on the device's whole group where > relevant, why should we invent some special mechanism for VFIO to be > needlessly inconsistent? > > I said before that it's trivial for VFIO to resolve a suitable device if it > needs to; by now I've actually written the patch ;) > > https://gitlab.arm.com/linux-arm/linux-rm/-/commit/9f37d8c17c9b606abc96e1f1001c0b97c8b93ed5
Er, how does locking work there? What keeps busdev from being concurrently unplugged? How can iommu_group_get() be safely called on this pointer?
All of the above only works normally inside a probe/remove context where the driver core is blocking concurrent unplug and descruction.
I think I said this last time you brought it up that lifetime was the challenge with this idea.
Jason
| |