summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--vl.c23
1 files changed, 15 insertions, 8 deletions
diff --git a/vl.c b/vl.c
index f12363cd64..ca568b2bde 100644
--- a/vl.c
+++ b/vl.c
@@ -2927,6 +2927,20 @@ static bool tcg_cpu_exec(void)
return tcg_has_work();
}
+static void set_numa_modes(void)
+{
+ CPUState *env;
+ int i;
+
+ for (env = first_cpu; env != NULL; env = env->next_cpu) {
+ for (i = 0; i < nb_numa_nodes; i++) {
+ if (node_cpumask[i] & (1 << env->cpu_index)) {
+ env->numa_node = i;
+ }
+ }
+ }
+}
+
static int vm_can_run(void)
{
if (powerdown_requested)
@@ -3735,7 +3749,6 @@ int main(int argc, char **argv, char **envp)
const char *chroot_dir = NULL;
const char *run_as = NULL;
#endif
- CPUState *env;
int show_vnc_port = 0;
int defconfig = 1;
@@ -4851,13 +4864,7 @@ int main(int argc, char **argv, char **envp)
sighandler_setup();
#endif
- for (env = first_cpu; env != NULL; env = env->next_cpu) {
- for (i = 0; i < nb_numa_nodes; i++) {
- if (node_cpumask[i] & (1 << env->cpu_index)) {
- env->numa_node = i;
- }
- }
- }
+ set_numa_modes();
current_machine = machine;