On Fri, 15 Feb 2013 17:10:08 +0100
Andreas Färber <[email protected]> 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 <[email protected]>

Reviewed-by: Luiz Capitulino <[email protected]>

> ---
>  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)


Reply via email to