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 <lionel.landwerlin@openwide.fr> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6670 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
0cfe11ea5f
commit
7c664e2f4e
33
monitor.c
33
monitor.c
@ -1245,6 +1245,35 @@ static void mem_info(void)
|
|||||||
}
|
}
|
||||||
#endif
|
#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)
|
static void do_info_kqemu(void)
|
||||||
{
|
{
|
||||||
#ifdef USE_KQEMU
|
#ifdef USE_KQEMU
|
||||||
@ -1556,9 +1585,11 @@ static const term_cmd_t info_cmds[] = {
|
|||||||
"", "show i8259 (PIC) state", },
|
"", "show i8259 (PIC) state", },
|
||||||
{ "pci", "", pci_info,
|
{ "pci", "", pci_info,
|
||||||
"", "show PCI info", },
|
"", "show PCI info", },
|
||||||
#if defined(TARGET_I386)
|
#if defined(TARGET_I386) || defined(TARGET_SH4)
|
||||||
{ "tlb", "", tlb_info,
|
{ "tlb", "", tlb_info,
|
||||||
"", "show virtual to physical memory mappings", },
|
"", "show virtual to physical memory mappings", },
|
||||||
|
#endif
|
||||||
|
#if defined(TARGET_I386)
|
||||||
{ "mem", "", mem_info,
|
{ "mem", "", mem_info,
|
||||||
"", "show the active virtual memory mappings", },
|
"", "show the active virtual memory mappings", },
|
||||||
{ "hpet", "", do_info_hpet,
|
{ "hpet", "", do_info_hpet,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user