diff mbox

[qom-cpu,49/59] cpus: Abstract all_vcpus_paused() with qemu_for_each_cpu()

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

Commit Message

Andreas Färber June 9, 2013, 7:13 p.m. UTC
Change return type from int to bool while at it.

Signed-off-by: Andreas Färber <afaerber@suse.de>
---
 cpus.c | 20 +++++++++++---------
 1 file changed, 11 insertions(+), 9 deletions(-)
diff mbox

Patch

diff --git a/cpus.c b/cpus.c
index 506a0c8..3856bf1 100644
--- a/cpus.c
+++ b/cpus.c
@@ -946,19 +946,21 @@  void qemu_mutex_unlock_iothread(void)
     qemu_mutex_unlock(&qemu_global_mutex);
 }
 
-static int all_vcpus_paused(void)
+static void one_vcpu_paused(CPUState *cpu, void *data)
 {
-    CPUArchState *penv = first_cpu;
+    bool *all_paused = data;
 
-    while (penv) {
-        CPUState *pcpu = ENV_GET_CPU(penv);
-        if (!pcpu->stopped) {
-            return 0;
-        }
-        penv = penv->next_cpu;
+    if (!cpu->stopped) {
+        *all_paused = false;
     }
+}
+
+static bool all_vcpus_paused(void)
+{
+    bool ret = true;
 
-    return 1;
+    qemu_for_each_cpu(one_vcpu_paused, &ret);
+    return ret;
 }
 
 static void pause_one_vcpu(CPUState *cpu, void *data)