On 9/20/23 9:10 PM, Liu, Yi L wrote:
- domain = iommu_domain_alloc(dev->bus);
No need to bounce between core and driver. Just,
intel_iommu_domain_alloc(IOMMU_DOMAIN_UNMANAGED);
and fully initialize it before return.
If you are going to do that then intel_iommu_domain_alloc() should fully initialize the domain, not here.
I've also considered what Baolu described, but it requires to do some extra initialization which is duplicated with iommu_domain_alloc(). So I chose this simple way.
Okay, got you.
Once Jason's paging domain and Robin's bus->iommu_ops retirement series have landed, the VT-d driver will need some refactoring. Therefore, I'm fine with you using a simpler approach here. I'll refactor everything later.
Best regards, baolu