qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v6 08/18] intel_iommu: fix trace for addr transl


From: Jason Wang
Subject: Re: [Qemu-devel] [PATCH v6 08/18] intel_iommu: fix trace for addr translation
Date: Tue, 7 Feb 2017 13:40:39 +0800
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.7.0



On 2017年02月03日 16:22, Peter Xu wrote:
Another patch to convert the DPRINTF() stuffs. This patch focuses on the
address translation path and caching.

Signed-off-by: Peter Xu<address@hidden>
---
  hw/i386/intel_iommu.c | 84 ++++++++++++++++++++-------------------------------
  hw/i386/trace-events  |  7 +++++
  2 files changed, 39 insertions(+), 52 deletions(-)

Similar to previous patch, this in fact a conversion not a fix.


diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c
index d7b9a01..c672621 100644
--- a/hw/i386/intel_iommu.c
+++ b/hw/i386/intel_iommu.c
@@ -260,11 +260,9 @@ static void vtd_update_iotlb(IntelIOMMUState *s, uint16_t 
source_id,
      uint64_t *key = g_malloc(sizeof(*key));
      uint64_t gfn = vtd_get_iotlb_gfn(addr, level);
- VTD_DPRINTF(CACHE, "update iotlb sid 0x%"PRIx16 " iova 0x%"PRIx64
-                " slpte 0x%"PRIx64 " did 0x%"PRIx16, source_id, addr, slpte,
-                domain_id);
+    trace_vtd_iotlb_page_update(source_id, addr, slpte, domain_id);
      if (g_hash_table_size(s->iotlb) >= VTD_IOTLB_MAX_SIZE) {
-        VTD_DPRINTF(CACHE, "iotlb exceeds size limit, forced to reset");
+        trace_vtd_iotlb_reset("iotlb exceeds size limit");
          vtd_reset_iotlb(s);
      }
@@ -505,8 +503,7 @@ static int vtd_get_root_entry(IntelIOMMUState *s, uint8_t index, addr = s->root + index * sizeof(*re);
      if (dma_memory_read(&address_space_memory, addr, re, sizeof(*re))) {
-        VTD_DPRINTF(GENERAL, "error: fail to access root-entry at 0x%"PRIx64
-                    " + %"PRIu8, s->root, index);
+        trace_vtd_err("Fail to access root-entry");

Looks like some information were removed which may be valuable for debugging, any reason for do this?

          re->val = 0;
          return -VTD_FR_ROOT_TABLE_INV;
      }

[...]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]