Hi Yu,
On Fri, 3 Jul 2026 00:05:17 +0800
Yu Zhang <[email protected]> wrote:
> +static int hv_iommu_attach_dev(struct iommu_domain *domain, struct
> device *dev,
> + struct iommu_domain *old)
> +{
> + u64 status;
> + u32 prefix;
> + unsigned long flags;
> + struct pci_dev *pdev;
> + struct hv_input_attach_device_domain *input;
> + struct hv_iommu_endpoint *vdev = dev_iommu_priv_get(dev);
> + struct hv_iommu_domain *hv_domain =
> to_hv_iommu_domain(domain);
> + int ret;
> +
> + if (vdev->hv_domain == hv_domain)
> + return 0;
> +
Is this needed? seems the core code already skips same domain attach?
i.e.
static int __iommu_group_set_domain_internal(struct iommu_group *group,
struct iommu_domain
*new_domain, unsigned int flags)
{
...
if (group->domain == new_domain)
return 0;