Maybe there are the same bus:dev.fn in different domains,
so add the domain field for dmar fault message to
identify the exact source device.

Signed-off-by: Yijing Wang <[email protected]>
---
 drivers/iommu/dmar.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/iommu/dmar.c b/drivers/iommu/dmar.c
index 8ed55b0..4f469c7 100644
--- a/drivers/iommu/dmar.c
+++ b/drivers/iommu/dmar.c
@@ -1466,17 +1466,17 @@ static int dmar_fault_do_one(struct intel_iommu *iommu, 
int type,
        reason = dmar_get_fault_reason(fault_reason, &fault_type);
 
        if (fault_type == INTR_REMAP)
-               pr_err("INTR-REMAP: Request device [[%02x:%02x.%d] "
+               pr_err("INTR-REMAP: Request device [[%04x:%02x:%02x.%d] "
                       "fault index %llx\n"
-                       "INTR-REMAP:[fault reason %02d] %s\n",
+                       "INTR-REMAP:[fault reason %02d] %s\n", iommu->segment,
                        (source_id >> 8), PCI_SLOT(source_id & 0xFF),
                        PCI_FUNC(source_id & 0xFF), addr >> 48,
                        fault_reason, reason);
        else
-               pr_err("DMAR:[%s] Request device [%02x:%02x.%d] "
+               pr_err("DMAR:[%s] Request device [%04x:%02x:%02x.%d] "
                       "fault addr %llx \n"
                       "DMAR:[fault reason %02d] %s\n",
-                      (type ? "DMA Read" : "DMA Write"),
+                      (type ? "DMA Read" : "DMA Write"), iommu->segment,
                       (source_id >> 8), PCI_SLOT(source_id & 0xFF),
                       PCI_FUNC(source_id & 0xFF), addr, fault_reason, reason);
        return 0;
-- 
1.7.1

_______________________________________________
iommu mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/iommu

Reply via email to