On Fri, Nov 19, 2021 at 05:44:35AM +0000, Tian, Kevin wrote:
Well, the difference is just in literal. I don't know the background
why the existing iommu_attach_device() users want to do it this
way. But given the condition in iommu_attach_device() it could
in theory imply some unknown hardware-level side effect which
may break the desired functionality once the group size grows
beyond singleton. Is it a real case? I don't know...
No, this must not be.
Any device can have VFIO attached to it, and VFIO does the equivalent
of iommu_attach_device(). We cannot have "unknown hardware-level side
effects" to changing the domain's of multi device groups and also have
working VFIO.
If these HW problems exist they are a seperate issue and the iommu
core should flag such groups as being unable to change their domains
at all.
Jason