> From: Nicolin Chen <nicolinc@xxxxxxxxxx> > Sent: Monday, September 1, 2025 7:32 AM > > The IOMMU core attaches each device to a default domain on probe(). Then, > every new "attach" operation has a fundamental meaning of two-fold: > - detach from its currently attached (old) domain > - attach to a given new domain > > Modern IOMMU drivers following this pattern usually want to clean up the > things related to the old domain, so they call iommu_get_domain_for_dev() > to fetch the old domain. > > Pass in the old domain pointer from the core to drivers, aligning with the > set_dev_pasid op that passes in already. > > Ensure all low-level attach fcuntions in the core can forward the correct > old domain pointer. Thus, rework those functions as well. > > Suggested-by: Jason Gunthorpe <jgg@xxxxxxxxxx> > Signed-off-by: Nicolin Chen <nicolinc@xxxxxxxxxx> Reviewed-by: Kevin Tian <kevin.tian@xxxxxxxxx>