Patchwork [v2] hmp: fix info cpus for sparc targets

login
register
mail settings
Submitter Aurelien Jarno
Date Oct. 19, 2012, 9:19 p.m.
Message ID <1350681559-28522-1-git-send-email-aurelien@aurel32.net>
Download mbox | patch
Permalink /patch/192822/
State New
Headers show

Comments

Aurelien Jarno - Oct. 19, 2012, 9:19 p.m.
On sparc targets, info cpus returns this kind of output:

| info cpus
| * CPU #0: pc=0x0000000000424d18pc=0x0000000000424d18npc=0x0000000000424d1c thread_id=19460

pc is printed twice, there is no space between pc, pc and npc.

With this patch, pc is not printed anymore when has_npc is set. In addition
the space is printed before pc/nip/npc/PC instead of after the colon so that
multiple prints are possible. This result on the following kind of input on
sparc targets:

| info cpus
| * CPU #0: pc=0x0000000000424d18 npc=0x0000000000424d1c thread_id=19460

Cc: Luiz Capitulino <lcapitulino@redhat.com>
Cc: Markus Armbruster <armbru@redhat.com>
Cc: Blue Swirl <blauwirbel@gmail.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
---
 hmp.c |   11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

Changes v1 -> v2: strategy change, has_npc doesn't imply has_pc anymore.
Luiz Capitulino - Oct. 22, 2012, 3:12 p.m.
On Fri, 19 Oct 2012 23:19:19 +0200
Aurelien Jarno <aurelien@aurel32.net> wrote:

> On sparc targets, info cpus returns this kind of output:
> 
> | info cpus
> | * CPU #0: pc=0x0000000000424d18pc=0x0000000000424d18npc=0x0000000000424d1c thread_id=19460
> 
> pc is printed twice, there is no space between pc, pc and npc.
> 
> With this patch, pc is not printed anymore when has_npc is set. In addition
> the space is printed before pc/nip/npc/PC instead of after the colon so that
> multiple prints are possible. This result on the following kind of input on
> sparc targets:
> 
> | info cpus
> | * CPU #0: pc=0x0000000000424d18 npc=0x0000000000424d1c thread_id=19460
> 
> Cc: Luiz Capitulino <lcapitulino@redhat.com>
> Cc: Markus Armbruster <armbru@redhat.com>
> Cc: Blue Swirl <blauwirbel@gmail.com>
> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>

I've applied this one to the qmp branch. If you want to merge it yourself
feel free to add:

Acked-by: Luiz Capitulino <lcapitulino@redhat.com>

> ---
>  hmp.c |   11 +++++------
>  1 file changed, 5 insertions(+), 6 deletions(-)
> 
> Changes v1 -> v2: strategy change, has_npc doesn't imply has_pc anymore.
> 
> diff --git a/hmp.c b/hmp.c
> index 70bdec2..296adc3 100644
> --- a/hmp.c
> +++ b/hmp.c
> @@ -233,20 +233,19 @@ void hmp_info_cpus(Monitor *mon)
>              active = '*';
>          }
>  
> -        monitor_printf(mon, "%c CPU #%" PRId64 ": ", active, cpu->value->CPU);
> +        monitor_printf(mon, "%c CPU #%" PRId64 ":", active, cpu->value->CPU);
>  
>          if (cpu->value->has_pc) {
> -            monitor_printf(mon, "pc=0x%016" PRIx64, cpu->value->pc);
> +            monitor_printf(mon, " pc=0x%016" PRIx64, cpu->value->pc);
>          }
>          if (cpu->value->has_nip) {
> -            monitor_printf(mon, "nip=0x%016" PRIx64, cpu->value->nip);
> +            monitor_printf(mon, " nip=0x%016" PRIx64, cpu->value->nip);
>          }
>          if (cpu->value->has_npc) {
> -            monitor_printf(mon, "pc=0x%016" PRIx64, cpu->value->pc);
> -            monitor_printf(mon, "npc=0x%016" PRIx64, cpu->value->npc);
> +            monitor_printf(mon, " npc=0x%016" PRIx64, cpu->value->npc);
>          }
>          if (cpu->value->has_PC) {
> -            monitor_printf(mon, "PC=0x%016" PRIx64, cpu->value->PC);
> +            monitor_printf(mon, " PC=0x%016" PRIx64, cpu->value->PC);
>          }
>  
>          if (cpu->value->halted) {

Patch

diff --git a/hmp.c b/hmp.c
index 70bdec2..296adc3 100644
--- a/hmp.c
+++ b/hmp.c
@@ -233,20 +233,19 @@  void hmp_info_cpus(Monitor *mon)
             active = '*';
         }
 
-        monitor_printf(mon, "%c CPU #%" PRId64 ": ", active, cpu->value->CPU);
+        monitor_printf(mon, "%c CPU #%" PRId64 ":", active, cpu->value->CPU);
 
         if (cpu->value->has_pc) {
-            monitor_printf(mon, "pc=0x%016" PRIx64, cpu->value->pc);
+            monitor_printf(mon, " pc=0x%016" PRIx64, cpu->value->pc);
         }
         if (cpu->value->has_nip) {
-            monitor_printf(mon, "nip=0x%016" PRIx64, cpu->value->nip);
+            monitor_printf(mon, " nip=0x%016" PRIx64, cpu->value->nip);
         }
         if (cpu->value->has_npc) {
-            monitor_printf(mon, "pc=0x%016" PRIx64, cpu->value->pc);
-            monitor_printf(mon, "npc=0x%016" PRIx64, cpu->value->npc);
+            monitor_printf(mon, " npc=0x%016" PRIx64, cpu->value->npc);
         }
         if (cpu->value->has_PC) {
-            monitor_printf(mon, "PC=0x%016" PRIx64, cpu->value->PC);
+            monitor_printf(mon, " PC=0x%016" PRIx64, cpu->value->PC);
         }
 
         if (cpu->value->halted) {