[Qemu-devel] [PATCH qom-cpu-next] monitor: Use qemu_get_cpu() in monitor_set_cpu()

2013-02-15 Thread Andreas Färber
No functional change, just a reduction of CPU loops.

The mon_cpu field is left untouched for now since changing that requires
a number of larger prerequisites, including cpu_synchronize_state() and
mon_get_cpu().

Signed-off-by: Andreas Färber 
---
 monitor.c |   13 +
 1 Datei geändert, 5 Zeilen hinzugefügt(+), 8 Zeilen entfernt(-)

diff --git a/monitor.c b/monitor.c
index 20bd19b..cae33c4 100644
--- a/monitor.c
+++ b/monitor.c
@@ -855,17 +855,14 @@ EventInfoList *qmp_query_events(Error **errp)
 /* set the current CPU defined by the user */
 int monitor_set_cpu(int cpu_index)
 {
-CPUArchState *env;
 CPUState *cpu;
 
-for (env = first_cpu; env != NULL; env = env->next_cpu) {
-cpu = ENV_GET_CPU(env);
-if (cpu->cpu_index == cpu_index) {
-cur_mon->mon_cpu = env;
-return 0;
-}
+cpu = qemu_get_cpu(cpu_index);
+if (cpu == NULL) {
+return -1;
 }
-return -1;
+cur_mon->mon_cpu = cpu->env_ptr;
+return 0;
 }
 
 static CPUArchState *mon_get_cpu(void)
-- 
1.7.10.4




Re: [Qemu-devel] [PATCH qom-cpu-next] monitor: Use qemu_get_cpu() in monitor_set_cpu()

2013-02-18 Thread Andreas Färber
Am 18.02.2013 13:59, schrieb Luiz Capitulino:
> On Fri, 15 Feb 2013 17:10:08 +0100
> Andreas Färber  wrote:
> 
>> No functional change, just a reduction of CPU loops.
>>
>> The mon_cpu field is left untouched for now since changing that requires
>> a number of larger prerequisites, including cpu_synchronize_state() and
>> mon_get_cpu().
>>
>> Signed-off-by: Andreas Färber 
> 
> Reviewed-by: Luiz Capitulino 

Thanks, applied to qom-cpu-next:
https://github.com/afaerber/qemu-cpu/commits/qom-cpu-next

Andreas

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg



Re: [Qemu-devel] [PATCH qom-cpu-next] monitor: Use qemu_get_cpu() in monitor_set_cpu()

2013-02-18 Thread Luiz Capitulino
On Fri, 15 Feb 2013 17:10:08 +0100
Andreas Färber  wrote:

> No functional change, just a reduction of CPU loops.
> 
> The mon_cpu field is left untouched for now since changing that requires
> a number of larger prerequisites, including cpu_synchronize_state() and
> mon_get_cpu().
> 
> Signed-off-by: Andreas Färber 

Reviewed-by: Luiz Capitulino 

> ---
>  monitor.c |   13 +
>  1 Datei geändert, 5 Zeilen hinzugefügt(+), 8 Zeilen entfernt(-)
> 
> diff --git a/monitor.c b/monitor.c
> index 20bd19b..cae33c4 100644
> --- a/monitor.c
> +++ b/monitor.c
> @@ -855,17 +855,14 @@ EventInfoList *qmp_query_events(Error **errp)
>  /* set the current CPU defined by the user */
>  int monitor_set_cpu(int cpu_index)
>  {
> -CPUArchState *env;
>  CPUState *cpu;
>  
> -for (env = first_cpu; env != NULL; env = env->next_cpu) {
> -cpu = ENV_GET_CPU(env);
> -if (cpu->cpu_index == cpu_index) {
> -cur_mon->mon_cpu = env;
> -return 0;
> -}
> +cpu = qemu_get_cpu(cpu_index);
> +if (cpu == NULL) {
> +return -1;
>  }
> -return -1;
> +cur_mon->mon_cpu = cpu->env_ptr;
> +return 0;
>  }
>  
>  static CPUArchState *mon_get_cpu(void)




Re: [Qemu-devel] [PATCH qom-cpu-next] monitor: Use qemu_get_cpu() in monitor_set_cpu()

2013-02-25 Thread Markus Armbruster
Andreas Färber  writes:

> No functional change, just a reduction of CPU loops.
>
> The mon_cpu field is left untouched for now since changing that requires
> a number of larger prerequisites, including cpu_synchronize_state() and
> mon_get_cpu().
>
> Signed-off-by: Andreas Färber 

Reviewed-by: Markus Armbruster