[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 3/6] cpu: Reorder cpu->as and cpu->thread_id initial
From: |
Eduardo Habkost |
Subject: |
[Qemu-devel] [PATCH 3/6] cpu: Reorder cpu->as and cpu->thread_id initialization |
Date: |
Thu, 5 Mar 2015 12:38:47 -0300 |
Instead of initializing cpu->as and cpu->thread_id while holding
cpu_list_lock(), initialize it earlier.
This allows the code handling cpu_index and global CPU list to be
isolated from the rest.
Signed-off-by: Eduardo Habkost <address@hidden>
---
exec.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/exec.c b/exec.c
index 8220535..2e370d0 100644
--- a/exec.c
+++ b/exec.c
@@ -534,6 +534,11 @@ void cpu_exec_init(CPUArchState *env)
CPUState *some_cpu;
int cpu_index;
+#ifndef CONFIG_USER_ONLY
+ cpu->as = &address_space_memory;
+ cpu->thread_id = qemu_get_thread_id();
+#endif
+
#if defined(CONFIG_USER_ONLY)
cpu_list_lock();
#endif
@@ -542,10 +547,6 @@ void cpu_exec_init(CPUArchState *env)
cpu_index++;
}
cpu->cpu_index = cpu_index;
-#ifndef CONFIG_USER_ONLY
- cpu->as = &address_space_memory;
- cpu->thread_id = qemu_get_thread_id();
-#endif
QTAILQ_INSERT_TAIL(&cpus, cpu, node);
#if defined(CONFIG_USER_ONLY)
cpu_list_unlock();
--
2.1.0