qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 20/20] add next_cpu_index


From: Glauber Costa
Subject: [Qemu-devel] [PATCH 20/20] add next_cpu_index
Date: Fri, 27 Jun 2008 17:38:23 -0300

separate the logic for calculating the next cpu index
from cpu creation. It will allow others to query what's
the next cpu index to be created before cpu creation.

Signed-off-by: Glauber Costa <address@hidden>
---
 exec.c |   18 ++++++++++++------
 1 files changed, 12 insertions(+), 6 deletions(-)

diff --git a/exec.c b/exec.c
index d6490ba..3a17a7c 100644
--- a/exec.c
+++ b/exec.c
@@ -438,21 +438,27 @@ void cpu_exec_init_all(unsigned long tb_size)
     accel_start();
 }
 
-void cpu_exec_init(CPUState *env)
+int next_cpu_index()
 {
     CPUState **penv;
-    int cpu_index;
+    int cpu_index = 0;
 
-    env->next_cpu = NULL;
     penv = &first_cpu;
-    cpu_index = 0;
+
     while (*penv != NULL) {
         penv = (CPUState **)&(*penv)->next_cpu;
         cpu_index++;
     }
-    env->cpu_index = cpu_index;
+    return cpu_index;
+}
+
+void cpu_exec_init(CPUState *env)
+{
+    env->next_cpu = NULL;
+    env->cpu_index = next_cpu_index();
+    if (env->cpu_index == 0)
+        first_cpu = env;
     env->nb_watchpoints = 0;
-    *penv = env;
 }
 
 static inline void invalidate_page_bitmap(PageDesc *p)
-- 
1.5.5.1





reply via email to

[Prev in Thread] Current Thread [Next in Thread]