Message ID | 1440375847-17603-4-git-send-email-cota@braap.org |
---|---|
State | New |
Headers | show |
On 23/08/2015 17:23, Emilio G. Cota wrote: > So that it applies to usermode as well. > > Signed-off-by: Emilio G. Cota <cota@braap.org> > --- > cpu-exec.c | 2 ++ > cpus.c | 1 - > 2 files changed, 2 insertions(+), 1 deletion(-) > > diff --git a/cpu-exec.c b/cpu-exec.c > index b8a11e1..2b9a447 100644 > --- a/cpu-exec.c > +++ b/cpu-exec.c > @@ -386,6 +386,8 @@ int cpu_exec(CPUState *cpu) > uintptr_t next_tb; > SyncClocks sc; > > + current_cpu = cpu; > + > #ifndef CONFIG_USER_ONLY > /* FIXME: user-mode emulation probably needs a similar mechanism as well, > * for example for tb_flush. > diff --git a/cpus.c b/cpus.c > index 5484ce6..0fe6576 100644 > --- a/cpus.c > +++ b/cpus.c > @@ -1079,7 +1079,6 @@ static void *qemu_tcg_cpu_thread_fn(void *arg) > cpu->thread_id = qemu_get_thread_id(); > cpu->created = true; > cpu->can_do_io = 1; > - current_cpu = cpu; > > qemu_cond_signal(&qemu_cpu_cond); Please set it somewhere in linux-user/ and bsd-user/ instead, I would like to keep the TCG code more similar to KVM/Xen/qtest. Probably the whole qemu_thread_get_self(cpu->thread); cpu->thread_id = qemu_get_thread_id(); cpu->created = true; cpu->can_do_io = 1; current_cpu = cpu; should be moved into a new function (rcu_register_thread too?). Paolo
diff --git a/cpu-exec.c b/cpu-exec.c index b8a11e1..2b9a447 100644 --- a/cpu-exec.c +++ b/cpu-exec.c @@ -386,6 +386,8 @@ int cpu_exec(CPUState *cpu) uintptr_t next_tb; SyncClocks sc; + current_cpu = cpu; + #ifndef CONFIG_USER_ONLY /* FIXME: user-mode emulation probably needs a similar mechanism as well, * for example for tb_flush. diff --git a/cpus.c b/cpus.c index 5484ce6..0fe6576 100644 --- a/cpus.c +++ b/cpus.c @@ -1079,7 +1079,6 @@ static void *qemu_tcg_cpu_thread_fn(void *arg) cpu->thread_id = qemu_get_thread_id(); cpu->created = true; cpu->can_do_io = 1; - current_cpu = cpu; qemu_cond_signal(&qemu_cpu_cond);
So that it applies to usermode as well. Signed-off-by: Emilio G. Cota <cota@braap.org> --- cpu-exec.c | 2 ++ cpus.c | 1 - 2 files changed, 2 insertions(+), 1 deletion(-)