Message ID | 20220105204029.4058500-3-farosas@linux.ibm.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | target/ppc: powerpc_excp improvements (2/n) | expand |
On Wed, Jan 05, 2022 at 05:40:24PM -0300, Fabiano Rosas wrote: > Remove the compile time definition and make the logging be controlled > by the `-d mmu` option in the cmdline. > > Signed-off-by: Fabiano Rosas <farosas@linux.ibm.com> > Reviewed-by: Cédric Le Goater <clg@kaod.org> Reviewed-by: David Gibson <david@gibson.dropbear.id.au> I'm guessing from the text here that this logging is specific to the 60x software TLB implementation rather than (say) the 40x, 44x, 8xx or freescale implementations. Changing the function name to reflect that might be a nice future change. > --- > target/ppc/excp_helper.c | 15 ++++++--------- > 1 file changed, 6 insertions(+), 9 deletions(-) > > diff --git a/target/ppc/excp_helper.c b/target/ppc/excp_helper.c > index 2c5d5470de..ce86b2ae37 100644 > --- a/target/ppc/excp_helper.c > +++ b/target/ppc/excp_helper.c > @@ -30,8 +30,6 @@ > #include "exec/cpu_ldst.h" > #endif > > -/* #define DEBUG_SOFTWARE_TLB */ > - > /*****************************************************************************/ > /* Exception processing */ > #if !defined(CONFIG_USER_ONLY) > @@ -137,7 +135,6 @@ static void dump_hcall(CPUPPCState *env) > > static void ppc_excp_debug_sw_tlb(CPUPPCState *env, int excp) > { > -#if defined(DEBUG_SOFTWARE_TLB) > const char *es; > target_ulong *miss, *cmp; > int en; > @@ -161,12 +158,12 @@ static void ppc_excp_debug_sw_tlb(CPUPPCState *env, int excp) > miss = &env->spr[SPR_DMISS]; > cmp = &env->spr[SPR_DCMP]; > } > - qemu_log("6xx %sTLB miss: %cM " TARGET_FMT_lx " %cC " > - TARGET_FMT_lx " H1 " TARGET_FMT_lx " H2 " > - TARGET_FMT_lx " %08x\n", es, en, *miss, en, *cmp, > - env->spr[SPR_HASH1], env->spr[SPR_HASH2], > - env->error_code); > -#endif > + > + qemu_log_mask(CPU_LOG_MMU, "6xx %sTLB miss: %cM " TARGET_FMT_lx " %cC " > + TARGET_FMT_lx " H1 " TARGET_FMT_lx " H2 " > + TARGET_FMT_lx " %08x\n", es, en, *miss, en, *cmp, > + env->spr[SPR_HASH1], env->spr[SPR_HASH2], > + env->error_code); > } > >
On 1/5/22 12:40 PM, Fabiano Rosas wrote: > Remove the compile time definition and make the logging be controlled > by the `-d mmu` option in the cmdline. > > Signed-off-by: Fabiano Rosas <farosas@linux.ibm.com> > Reviewed-by: Cédric Le Goater <clg@kaod.org> > --- > target/ppc/excp_helper.c | 15 ++++++--------- > 1 file changed, 6 insertions(+), 9 deletions(-) > > diff --git a/target/ppc/excp_helper.c b/target/ppc/excp_helper.c > index 2c5d5470de..ce86b2ae37 100644 > --- a/target/ppc/excp_helper.c > +++ b/target/ppc/excp_helper.c > @@ -30,8 +30,6 @@ > #include "exec/cpu_ldst.h" > #endif > > -/* #define DEBUG_SOFTWARE_TLB */ > - > /*****************************************************************************/ > /* Exception processing */ > #if !defined(CONFIG_USER_ONLY) > @@ -137,7 +135,6 @@ static void dump_hcall(CPUPPCState *env) > > static void ppc_excp_debug_sw_tlb(CPUPPCState *env, int excp) > { > -#if defined(DEBUG_SOFTWARE_TLB) > const char *es; > target_ulong *miss, *cmp; > int en; > @@ -161,12 +158,12 @@ static void ppc_excp_debug_sw_tlb(CPUPPCState *env, int excp) > miss = &env->spr[SPR_DMISS]; > cmp = &env->spr[SPR_DCMP]; > } > - qemu_log("6xx %sTLB miss: %cM " TARGET_FMT_lx " %cC " > - TARGET_FMT_lx " H1 " TARGET_FMT_lx " H2 " > - TARGET_FMT_lx " %08x\n", es, en, *miss, en, *cmp, > - env->spr[SPR_HASH1], env->spr[SPR_HASH2], > - env->error_code); > -#endif > + > + qemu_log_mask(CPU_LOG_MMU, "6xx %sTLB miss: %cM " TARGET_FMT_lx " %cC " > + TARGET_FMT_lx " H1 " TARGET_FMT_lx " H2 " > + TARGET_FMT_lx " %08x\n", es, en, *miss, en, *cmp, > + env->spr[SPR_HASH1], env->spr[SPR_HASH2], > + env->error_code); Ah, then my comment wrt patch 1 applies to this one -- use the proper filter function at the top of this one, before all of the data collection for the actual logging. r~
diff --git a/target/ppc/excp_helper.c b/target/ppc/excp_helper.c index 2c5d5470de..ce86b2ae37 100644 --- a/target/ppc/excp_helper.c +++ b/target/ppc/excp_helper.c @@ -30,8 +30,6 @@ #include "exec/cpu_ldst.h" #endif -/* #define DEBUG_SOFTWARE_TLB */ - /*****************************************************************************/ /* Exception processing */ #if !defined(CONFIG_USER_ONLY) @@ -137,7 +135,6 @@ static void dump_hcall(CPUPPCState *env) static void ppc_excp_debug_sw_tlb(CPUPPCState *env, int excp) { -#if defined(DEBUG_SOFTWARE_TLB) const char *es; target_ulong *miss, *cmp; int en; @@ -161,12 +158,12 @@ static void ppc_excp_debug_sw_tlb(CPUPPCState *env, int excp) miss = &env->spr[SPR_DMISS]; cmp = &env->spr[SPR_DCMP]; } - qemu_log("6xx %sTLB miss: %cM " TARGET_FMT_lx " %cC " - TARGET_FMT_lx " H1 " TARGET_FMT_lx " H2 " - TARGET_FMT_lx " %08x\n", es, en, *miss, en, *cmp, - env->spr[SPR_HASH1], env->spr[SPR_HASH2], - env->error_code); -#endif + + qemu_log_mask(CPU_LOG_MMU, "6xx %sTLB miss: %cM " TARGET_FMT_lx " %cC " + TARGET_FMT_lx " H1 " TARGET_FMT_lx " H2 " + TARGET_FMT_lx " %08x\n", es, en, *miss, en, *cmp, + env->spr[SPR_HASH1], env->spr[SPR_HASH2], + env->error_code); }