All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
To: Suraj Jitindar Singh <sjitindarsingh@gmail.com>
Cc: qemu-devel@nongnu.org, armbru@redhat.com
Subject: Re: [Qemu-devel] [PATCH V2] monitor: Add -a (all) option to info registers
Date: Thu, 29 Jun 2017 13:09:47 +0100	[thread overview]
Message-ID: <20170629120946.GG2894@work-vm> (raw)
In-Reply-To: <20170608054116.17203-1-sjitindarsingh@gmail.com>

* Suraj Jitindar Singh (sjitindarsingh@gmail.com) wrote:
> The info registers command in the qemu monitor is used to dump register
> values.
> 
> Currently this command uses the monitor cpu (which can be set by the
> user) as the cpu for whose registers will be dumped. Sometimes it is
> useful to see the registers for all cpus and currently this requires
> setting the monitor cpu and the re-running the command for each cpu
> in the system. I would be nice if there was an easier way to do this.
> 
> Add the "-a" option to the info registers command to dump the register
> values for all cpus.
> 
> Signed-off-by: Suraj Jitindar Singh <sjitindarsingh@gmail.com>

Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>

> 
> ---
> 
> Change Log:
> 
> V1 -> V2:
>  - Add CPU number to beginning of register dump
> ---
>  hmp-commands-info.hx |  6 +++---
>  monitor.c            | 21 ++++++++++++++++-----
>  2 files changed, 19 insertions(+), 8 deletions(-)
> 
> diff --git a/hmp-commands-info.hx b/hmp-commands-info.hx
> index ae16901..ba98e58 100644
> --- a/hmp-commands-info.hx
> +++ b/hmp-commands-info.hx
> @@ -100,9 +100,9 @@ ETEXI
>  
>      {
>          .name       = "registers",
> -        .args_type  = "",
> -        .params     = "",
> -        .help       = "show the cpu registers",
> +        .args_type  = "cpustate_all:-a",
> +        .params     = "[-a]",
> +        .help       = "show the cpu registers (-a: all - show register info for all cpus)",
>          .cmd        = hmp_info_registers,
>      },
>  
> diff --git a/monitor.c b/monitor.c
> index baa73c9..1629ad1 100644
> --- a/monitor.c
> +++ b/monitor.c
> @@ -1078,13 +1078,24 @@ int monitor_get_cpu_index(void)
>  
>  static void hmp_info_registers(Monitor *mon, const QDict *qdict)
>  {
> -    CPUState *cs = mon_get_cpu();
> +    bool all_cpus = qdict_get_try_bool(qdict, "cpustate_all", false);
> +    CPUState *cs;
>  
> -    if (!cs) {
> -        monitor_printf(mon, "No CPU available\n");
> -        return;
> +    if (all_cpus) {
> +        CPU_FOREACH(cs) {
> +            monitor_printf(mon, "\nCPU#%d\n", cs->cpu_index);
> +            cpu_dump_state(cs, (FILE *)mon, monitor_fprintf, CPU_DUMP_FPU);
> +        }
> +    } else {
> +        cs = mon_get_cpu();
> +
> +        if (!cs) {
> +            monitor_printf(mon, "No CPU available\n");
> +            return;
> +        }
> +
> +        cpu_dump_state(cs, (FILE *)mon, monitor_fprintf, CPU_DUMP_FPU);
>      }
> -    cpu_dump_state(cs, (FILE *)mon, monitor_fprintf, CPU_DUMP_FPU);
>  }
>  
>  static void hmp_info_jit(Monitor *mon, const QDict *qdict)
> -- 
> 2.9.4
> 
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK

  reply	other threads:[~2017-06-29 12:09 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-08  5:41 [Qemu-devel] [PATCH V2] monitor: Add -a (all) option to info registers Suraj Jitindar Singh
2017-06-29 12:09 ` Dr. David Alan Gilbert [this message]
2017-06-29 14:34 ` Dr. David Alan Gilbert

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170629120946.GG2894@work-vm \
    --to=dgilbert@redhat.com \
    --cc=armbru@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=sjitindarsingh@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.