diff mbox

[qom-cpu,11/59] monitor: Simplify do_inject_mce()

Message ID 1370805206-26574-12-git-send-email-afaerber@suse.de
State New
Headers show

Commit Message

Andreas Färber June 9, 2013, 7:12 p.m. UTC
Use qemu_get_cpu() to avoid open-coded CPU loop.

Signed-off-by: Andreas Färber <afaerber@suse.de>
---
 monitor.c | 14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)

Comments

liguang June 10, 2013, 2:47 a.m. UTC | #1
Reviewed-by: liguang <lig.fnst@cn.fujitsu.com>

在 2013-06-09日的 21:12 +0200,Andreas Färber写道:
> Use qemu_get_cpu() to avoid open-coded CPU loop.
> 
> Signed-off-by: Andreas Färber <afaerber@suse.de>
> ---
>  monitor.c | 14 +++++---------
>  1 file changed, 5 insertions(+), 9 deletions(-)
> 
> diff --git a/monitor.c b/monitor.c
> index 6e22d15..19c297d 100644
> --- a/monitor.c
> +++ b/monitor.c
> @@ -2013,7 +2013,6 @@ static void do_acl_remove(Monitor *mon, const QDict *qdict)
>  static void do_inject_mce(Monitor *mon, const QDict *qdict)
>  {
>      X86CPU *cpu;
> -    CPUX86State *cenv;
>      CPUState *cs;
>      int cpu_index = qdict_get_int(qdict, "cpu_index");
>      int bank = qdict_get_int(qdict, "bank");
> @@ -2026,14 +2025,11 @@ static void do_inject_mce(Monitor *mon, const QDict *qdict)
>      if (qdict_get_try_bool(qdict, "broadcast", 0)) {
>          flags |= MCE_INJECT_BROADCAST;
>      }
> -    for (cenv = first_cpu; cenv != NULL; cenv = cenv->next_cpu) {
> -        cpu = x86_env_get_cpu(cenv);
> -        cs = CPU(cpu);
> -        if (cs->cpu_index == cpu_index) {
> -            cpu_x86_inject_mce(mon, cpu, bank, status, mcg_status, addr, misc,
> -                               flags);
> -            break;
> -        }
> +    cs = qemu_get_cpu(cpu_index);
> +    if (cs != NULL) {
> +        cpu = X86_CPU(cs);
> +        cpu_x86_inject_mce(mon, cpu, bank, status, mcg_status, addr, misc,
> +                           flags);
>      }
>  }
>  #endif
Luiz Capitulino June 10, 2013, 5:14 p.m. UTC | #2
On Sun,  9 Jun 2013 21:12:38 +0200
Andreas Färber <afaerber@suse.de> wrote:

> Use qemu_get_cpu() to avoid open-coded CPU loop.
> 
> Signed-off-by: Andreas Färber <afaerber@suse.de>

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

> ---
>  monitor.c | 14 +++++---------
>  1 file changed, 5 insertions(+), 9 deletions(-)
> 
> diff --git a/monitor.c b/monitor.c
> index 6e22d15..19c297d 100644
> --- a/monitor.c
> +++ b/monitor.c
> @@ -2013,7 +2013,6 @@ static void do_acl_remove(Monitor *mon, const QDict *qdict)
>  static void do_inject_mce(Monitor *mon, const QDict *qdict)
>  {
>      X86CPU *cpu;
> -    CPUX86State *cenv;
>      CPUState *cs;
>      int cpu_index = qdict_get_int(qdict, "cpu_index");
>      int bank = qdict_get_int(qdict, "bank");
> @@ -2026,14 +2025,11 @@ static void do_inject_mce(Monitor *mon, const QDict *qdict)
>      if (qdict_get_try_bool(qdict, "broadcast", 0)) {
>          flags |= MCE_INJECT_BROADCAST;
>      }
> -    for (cenv = first_cpu; cenv != NULL; cenv = cenv->next_cpu) {
> -        cpu = x86_env_get_cpu(cenv);
> -        cs = CPU(cpu);
> -        if (cs->cpu_index == cpu_index) {
> -            cpu_x86_inject_mce(mon, cpu, bank, status, mcg_status, addr, misc,
> -                               flags);
> -            break;
> -        }
> +    cs = qemu_get_cpu(cpu_index);
> +    if (cs != NULL) {
> +        cpu = X86_CPU(cs);
> +        cpu_x86_inject_mce(mon, cpu, bank, status, mcg_status, addr, misc,
> +                           flags);
>      }
>  }
>  #endif
Andreas Färber June 10, 2013, 10:15 p.m. UTC | #3
Am 10.06.2013 19:14, schrieb Luiz Capitulino:
> On Sun,  9 Jun 2013 21:12:38 +0200
> Andreas Färber <afaerber@suse.de> wrote:
> 
>> Use qemu_get_cpu() to avoid open-coded CPU loop.
>>
>> Signed-off-by: Andreas Färber <afaerber@suse.de>
> 
> Reviewed-by: Luiz Capitulino <lcapitulino@redhat.com>

Thanks, applied to qom-cpu (with commit message improved):
https://github.com/afaerber/qemu-cpu/commits/qom-cpu

Andreas
diff mbox

Patch

diff --git a/monitor.c b/monitor.c
index 6e22d15..19c297d 100644
--- a/monitor.c
+++ b/monitor.c
@@ -2013,7 +2013,6 @@  static void do_acl_remove(Monitor *mon, const QDict *qdict)
 static void do_inject_mce(Monitor *mon, const QDict *qdict)
 {
     X86CPU *cpu;
-    CPUX86State *cenv;
     CPUState *cs;
     int cpu_index = qdict_get_int(qdict, "cpu_index");
     int bank = qdict_get_int(qdict, "bank");
@@ -2026,14 +2025,11 @@  static void do_inject_mce(Monitor *mon, const QDict *qdict)
     if (qdict_get_try_bool(qdict, "broadcast", 0)) {
         flags |= MCE_INJECT_BROADCAST;
     }
-    for (cenv = first_cpu; cenv != NULL; cenv = cenv->next_cpu) {
-        cpu = x86_env_get_cpu(cenv);
-        cs = CPU(cpu);
-        if (cs->cpu_index == cpu_index) {
-            cpu_x86_inject_mce(mon, cpu, bank, status, mcg_status, addr, misc,
-                               flags);
-            break;
-        }
+    cs = qemu_get_cpu(cpu_index);
+    if (cs != NULL) {
+        cpu = X86_CPU(cs);
+        cpu_x86_inject_mce(mon, cpu, bank, status, mcg_status, addr, misc,
+                           flags);
     }
 }
 #endif