qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [6670] SH4: Added monitoring of TLBs


From: Aurelien Jarno
Subject: [Qemu-devel] [6670] SH4: Added monitoring of TLBs
Date: Tue, 03 Mar 2009 06:12:23 +0000

Revision: 6670
          http://svn.sv.gnu.org/viewvc/?view=rev&root=qemu&revision=6670
Author:   aurel32
Date:     2009-03-03 06:12:22 +0000 (Tue, 03 Mar 2009)
Log Message:
-----------
SH4: Added monitoring of TLBs

This patch might interest some people trying (as I try to do) to fix
some tlbs for kernel/user space data sharing.

Signed-off-by: Lionel Landwerlin <address@hidden>
Signed-off-by: Aurelien Jarno <address@hidden>

Modified Paths:
--------------
    trunk/monitor.c

Modified: trunk/monitor.c
===================================================================
--- trunk/monitor.c     2009-03-03 06:12:14 UTC (rev 6669)
+++ trunk/monitor.c     2009-03-03 06:12:22 UTC (rev 6670)
@@ -1245,6 +1245,35 @@
 }
 #endif
 
+#if defined(TARGET_SH4)
+
+static void print_tlb(int idx, tlb_t *tlb)
+{
+    term_printf(" tlb%i:\t"
+                "asid=%hhu vpn=%x\tppn=%x\tsz=%hhu size=%u\t"
+                "v=%hhu shared=%hhu cached=%hhu prot=%hhu "
+                "dirty=%hhu writethrough=%hhu\n",
+                idx,
+                tlb->asid, tlb->vpn, tlb->ppn, tlb->sz, tlb->size,
+                tlb->v, tlb->sh, tlb->c, tlb->pr,
+                tlb->d, tlb->wt);
+}
+
+static void tlb_info(void)
+{
+    CPUState *env = mon_get_cpu();
+    int i;
+
+    term_printf ("ITLB:\n");
+    for (i = 0 ; i < ITLB_SIZE ; i++)
+        print_tlb (i, &env->itlb[i]);
+    term_printf ("UTLB:\n");
+    for (i = 0 ; i < UTLB_SIZE ; i++)
+        print_tlb (i, &env->utlb[i]);
+}
+
+#endif
+
 static void do_info_kqemu(void)
 {
 #ifdef USE_KQEMU
@@ -1556,9 +1585,11 @@
       "", "show i8259 (PIC) state", },
     { "pci", "", pci_info,
       "", "show PCI info", },
-#if defined(TARGET_I386)
+#if defined(TARGET_I386) || defined(TARGET_SH4)
     { "tlb", "", tlb_info,
       "", "show virtual to physical memory mappings", },
+#endif
+#if defined(TARGET_I386)
     { "mem", "", mem_info,
       "", "show the active virtual memory mappings", },
     { "hpet", "", do_info_hpet,





reply via email to

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