iommu: Don't print warning when IOMMU driver only supports unmanaged domains
Print the warning about the fall-back to IOMMU_DOMAIN_DMA in
iommu_group_get_for_dev() only when such a domain was
actually allocated.
Otherwise the user will get misleading warnings in the
kernel log when the iommu driver used doesn't support
IOMMU_DOMAIN_DMA and IOMMU_DOMAIN_IDENTITY.
Fixes: fccb4e3b8a
('iommu: Allow default domain type to be set on the kernel command line')
Signed-off-by: Joerg Roedel <jroedel@suse.de>
This commit is contained in:
parent
8c2ffd9174
commit
8bc32a2856
|
@ -1105,10 +1105,12 @@ struct iommu_group *iommu_group_get_for_dev(struct device *dev)
|
||||||
|
|
||||||
dom = __iommu_domain_alloc(dev->bus, iommu_def_domain_type);
|
dom = __iommu_domain_alloc(dev->bus, iommu_def_domain_type);
|
||||||
if (!dom && iommu_def_domain_type != IOMMU_DOMAIN_DMA) {
|
if (!dom && iommu_def_domain_type != IOMMU_DOMAIN_DMA) {
|
||||||
dev_warn(dev,
|
|
||||||
"failed to allocate default IOMMU domain of type %u; falling back to IOMMU_DOMAIN_DMA",
|
|
||||||
iommu_def_domain_type);
|
|
||||||
dom = __iommu_domain_alloc(dev->bus, IOMMU_DOMAIN_DMA);
|
dom = __iommu_domain_alloc(dev->bus, IOMMU_DOMAIN_DMA);
|
||||||
|
if (dom) {
|
||||||
|
dev_warn(dev,
|
||||||
|
"failed to allocate default IOMMU domain of type %u; falling back to IOMMU_DOMAIN_DMA",
|
||||||
|
iommu_def_domain_type);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
group->default_domain = dom;
|
group->default_domain = dom;
|
||||||
|
|
Loading…
Reference in New Issue