diff mbox

[09/22] monitor: disable "info jit" and "info opcount" if !TCG

Message ID 1499166735-39360-10-git-send-email-pbonzini@redhat.com
State New
Headers show

Commit Message

Paolo Bonzini July 4, 2017, 11:12 a.m. UTC
Reviewed-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 accel/tcg/translate-all.c | 5 +++++
 hmp-commands-info.hx      | 4 ++++
 monitor.c                 | 2 ++
 3 files changed, 11 insertions(+)

Comments

Emilio Cota July 6, 2017, 8:26 p.m. UTC | #1
On Tue, Jul 04, 2017 at 13:12:02 +0200, Paolo Bonzini wrote:
> Reviewed-by: Richard Henderson <rth@twiddle.net>
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> ---
>  accel/tcg/translate-all.c | 5 +++++
>  hmp-commands-info.hx      | 4 ++++
>  monitor.c                 | 2 ++
>  3 files changed, 11 insertions(+)
> 
> diff --git a/accel/tcg/translate-all.c b/accel/tcg/translate-all.c
> index 4c1d8c9..093207a 100644
> --- a/accel/tcg/translate-all.c
> +++ b/accel/tcg/translate-all.c
> @@ -1851,6 +1851,11 @@ void dump_exec_info(FILE *f, fprintf_function cpu_fprintf)
>  
>      tb_lock();
>  
> +    if (!tcg_enabled()) {
> +        cpu_fprintf(f, "TCG not enabled\n");
> +        return;
> +    }

Sorry I missed this before it was merged, but:

- We're returning with tb_lock held
- This check is redundant; see b7da97eef ("monitor: Check whether TCG
  is enabled before running the "info jit" code") which was merged
  in April (hmp_info_jit is the only caller of dump_exec_info).

I suggest we get rid of the check, although moving it above tb_lock is
also OK with me.

Thanks,

		Emilio
Emilio Cota July 9, 2017, 8:13 a.m. UTC | #2
On Thu, Jul 06, 2017 at 16:26:52 -0400, Emilio G. Cota wrote:
> On Tue, Jul 04, 2017 at 13:12:02 +0200, Paolo Bonzini wrote:
> > Reviewed-by: Richard Henderson <rth@twiddle.net>
> > Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
(snip)
> > +++ b/accel/tcg/translate-all.c
> > @@ -1851,6 +1851,11 @@ void dump_exec_info(FILE *f, fprintf_function cpu_fprintf)
> >  
> >      tb_lock();
> >  
> > +    if (!tcg_enabled()) {
> > +        cpu_fprintf(f, "TCG not enabled\n");
> > +        return;
> > +    }
> 
> Sorry I missed this before it was merged, but:
> 
> - We're returning with tb_lock held
> - This check is redundant; see b7da97eef ("monitor: Check whether TCG
>   is enabled before running the "info jit" code") which was merged
>   in April (hmp_info_jit is the only caller of dump_exec_info).
> 
> I suggest we get rid of the check, although moving it above tb_lock is
> also OK with me.

Patch here:
  https://lists.nongnu.org/archive/html/qemu-devel/2017-07/msg02072.html

This other patch fixes another issue introduced in this series, please
have a look as well:
  https://lists.nongnu.org/archive/html/qemu-devel/2017-07/msg02058.html

Cheers,

		Emilio
diff mbox

Patch

diff --git a/accel/tcg/translate-all.c b/accel/tcg/translate-all.c
index 4c1d8c9..093207a 100644
--- a/accel/tcg/translate-all.c
+++ b/accel/tcg/translate-all.c
@@ -1851,6 +1851,11 @@  void dump_exec_info(FILE *f, fprintf_function cpu_fprintf)
 
     tb_lock();
 
+    if (!tcg_enabled()) {
+        cpu_fprintf(f, "TCG not enabled\n");
+        return;
+    }
+
     target_code_size = 0;
     max_target_code_size = 0;
     cross_page = 0;
diff --git a/hmp-commands-info.hx b/hmp-commands-info.hx
index ba98e58..07500ef 100644
--- a/hmp-commands-info.hx
+++ b/hmp-commands-info.hx
@@ -261,6 +261,7 @@  STEXI
 Show memory tree.
 ETEXI
 
+#if defined(CONFIG_TCG)
     {
         .name       = "jit",
         .args_type  = "",
@@ -268,6 +269,7 @@  ETEXI
         .help       = "show dynamic compiler info",
         .cmd        = hmp_info_jit,
     },
+#endif
 
 STEXI
 @item info jit
@@ -275,6 +277,7 @@  STEXI
 Show dynamic compiler info.
 ETEXI
 
+#if defined(CONFIG_TCG)
     {
         .name       = "opcount",
         .args_type  = "",
@@ -282,6 +285,7 @@  ETEXI
         .help       = "show dynamic compiler opcode counters",
         .cmd        = hmp_info_opcount,
     },
+#endif
 
 STEXI
 @item info opcount
diff --git a/monitor.c b/monitor.c
index 4031876..d8ac20f 100644
--- a/monitor.c
+++ b/monitor.c
@@ -1098,6 +1098,7 @@  static void hmp_info_registers(Monitor *mon, const QDict *qdict)
     }
 }
 
+#ifdef CONFIG_TCG
 static void hmp_info_jit(Monitor *mon, const QDict *qdict)
 {
     if (!tcg_enabled()) {
@@ -1113,6 +1114,7 @@  static void hmp_info_opcount(Monitor *mon, const QDict *qdict)
 {
     dump_opcount_info((FILE *)mon, monitor_fprintf);
 }
+#endif
 
 static void hmp_info_history(Monitor *mon, const QDict *qdict)
 {