]> git.ipfire.org Git - thirdparty/linux.git/commit
iommu: Do not revert set_domain for the last gdev
authorNicolin Chen <nicolinc@nvidia.com>
Thu, 23 Oct 2025 02:21:08 +0000 (19:21 -0700)
committerJoerg Roedel <joerg.roedel@amd.com>
Mon, 27 Oct 2025 12:55:35 +0000 (13:55 +0100)
commit2b33598e666d0c7b761148ffee86140238968861
tree5dab189ba910518227f81d2069b694801f7bdf0a
parentc21b34762e2f4a9a255b4ef69a018f8787699bf8
iommu: Do not revert set_domain for the last gdev

The last gdev is the device that failed the __iommu_device_set_domain().
So, it doesn't need to be reverted, given it's attached to group->domain
already.

This is not a problem currently, since it's a simply re-attach. However,
the core will need to pass in the old domain to __iommu_device_set_domain
so the old domain pointers would be inconsistent between a failed device
and all its prior succeeded devices, as all the prior devices need to be
reverted.

Avoid the re-attach for the last gdev, by breaking before the revert.

Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Signed-off-by: Nicolin Chen <nicolinc@nvidia.com>
Reviewed-by: Lu Baolu <baolu.lu@linux.intel.com>
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
drivers/iommu/iommu.c