mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-29 22:02:02 +00:00
iommu/amd: Allow non-ATS devices in IOMMUv2 domains
With the grouping of multi-function devices a non-ATS capable device might also end up in the same domain as an IOMMUv2 capable device. So handle this situation gracefully and don't consider it a bug anymore. Tested-by: Oded Gabbay <oded.gabbay@gmail.com> Signed-off-by: Joerg Roedel <jroedel@suse.de>
This commit is contained in:
parent
5271782835
commit
1c1cc454aa
1 changed files with 6 additions and 1 deletions
|
@ -3318,7 +3318,12 @@ static int __flush_pasid(struct protection_domain *domain, int pasid,
|
|||
struct amd_iommu *iommu;
|
||||
int qdep;
|
||||
|
||||
BUG_ON(!dev_data->ats.enabled);
|
||||
/*
|
||||
There might be non-IOMMUv2 capable devices in an IOMMUv2
|
||||
* domain.
|
||||
*/
|
||||
if (!dev_data->ats.enabled)
|
||||
continue;
|
||||
|
||||
qdep = dev_data->ats.qdep;
|
||||
iommu = amd_iommu_rlookup_table[dev_data->devid];
|
||||
|
|
Loading…
Reference in a new issue