Hi,

On 3/14/19 7:58 PM, James Sewart wrote:
If a device requires an identity map then it is not safe to attach a
domain that can remap addresses. Warn the user if this occurs.

Signed-off-by: James Sewart <[email protected]>
---
  drivers/iommu/intel-iommu.c | 5 +++++
  1 file changed, 5 insertions(+)

diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
index 2e00e8708f06..104d36f225a7 100644
--- a/drivers/iommu/intel-iommu.c
+++ b/drivers/iommu/intel-iommu.c
@@ -5101,6 +5101,11 @@ static int intel_iommu_attach_device(struct iommu_domain 
*domain,
                }
        }
+ if (iommu_no_mapping(dev)) {
+               dmar_domain = si_domain;
+               dev_warn(dev, "VT-d: Device is required to use identity IOMMU 
mapping, ignoring domain attached\n");
+       }

This is awful. :-)

IOMMU generic layer allocated a @domain and tries to bind the @domain
with a device. This code replaces @domain with si_domain without
notifying the upper layer.

Best regards,
Lu Baolu
_______________________________________________
iommu mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/iommu

Reply via email to