[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 41/41] cpus: create qemu_in_vcpu_thread()
From: |
Juan Quintela |
Subject: |
[Qemu-devel] [PATCH 41/41] cpus: create qemu_in_vcpu_thread() |
Date: |
Tue, 2 Oct 2012 13:33:36 +0200 |
Old code used !io_thread to know if a thread was an vcpu or not. That
fails when we introduce the iothread.
Signed-off-by: Juan Quintela <address@hidden>
---
cpus.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/cpus.c b/cpus.c
index 4b726ef..76c4255 100644
--- a/cpus.c
+++ b/cpus.c
@@ -902,6 +902,11 @@ int qemu_cpu_is_self(void *_env)
return qemu_thread_is_self(cpu->thread);
}
+static bool qemu_in_vcpu_thread(void)
+{
+ return cpu_single_env && qemu_cpu_is_self(cpu_single_env);
+}
+
void qemu_mutex_lock_iothread(void)
{
if (!tcg_enabled()) {
@@ -947,7 +952,7 @@ void pause_all_vcpus(void)
penv = penv->next_cpu;
}
- if (!qemu_thread_is_self(&io_thread)) {
+ if (qemu_in_vcpu_thread()) {
cpu_stop_current();
if (!kvm_enabled()) {
while (penv) {
@@ -1064,7 +1069,7 @@ void cpu_stop_current(void)
void vm_stop(RunState state)
{
- if (!qemu_thread_is_self(&io_thread)) {
+ if (qemu_in_vcpu_thread()) {
qemu_system_vmstop_request(state);
/*
* FIXME: should not return to device code in case
--
1.7.11.4
- [Qemu-devel] [PATCH 29/41] savevm: Remove qemu_fseek(), (continued)
- [Qemu-devel] [PATCH 29/41] savevm: Remove qemu_fseek(), Juan Quintela, 2012/10/02
- [Qemu-devel] [PATCH 28/41] virtio-net: use qemu_get_buffer() in a temp buffer, Juan Quintela, 2012/10/02
- [Qemu-devel] [PATCH 33/41] savevm: make qemu_fill_buffer() be consistent, Juan Quintela, 2012/10/02
- [Qemu-devel] [PATCH 36/41] block-migration: make flush_blks() return errors, Juan Quintela, 2012/10/02
- [Qemu-devel] [PATCH 37/41] block-migration: Switch meaning of return value, Juan Quintela, 2012/10/02
- [Qemu-devel] [PATCH 38/41] block-migration: handle errors with the return codes correctly, Juan Quintela, 2012/10/02
- [Qemu-devel] [PATCH 40/41] savevm: make qemu_file_put_notify() return errors, Juan Quintela, 2012/10/02
- [Qemu-devel] [PATCH 39/41] savevm: un-export qemu_file_set_error(), Juan Quintela, 2012/10/02
- [Qemu-devel] [PATCH 31/41] savevm: unfold qemu_fclose_internal(), Juan Quintela, 2012/10/02
- [Qemu-devel] [PATCH 24/41] buffered_file: callers of buffered_flush() already check for errors, Juan Quintela, 2012/10/02
- [Qemu-devel] [PATCH 41/41] cpus: create qemu_in_vcpu_thread(),
Juan Quintela <=
- [Qemu-devel] [PATCH 27/41] savevm: unexport qemu_fflush, Juan Quintela, 2012/10/02
- [Qemu-devel] [PATCH 23/41] buffered_file: We can access directly to bandwidth_limit, Juan Quintela, 2012/10/02
- [Qemu-devel] [PATCH 25/41] buffered_file: make buffered_flush return the error code, Juan Quintela, 2012/10/02
- [Qemu-devel] [PATCH 34/41] savevm: Only qemu_fflush() can generate errors, Juan Quintela, 2012/10/02
- [Qemu-devel] [PATCH 32/41] savevm: unexport qemu_ftell(), Juan Quintela, 2012/10/02
- [Qemu-devel] [PATCH 35/41] buffered_file: buffered_put_buffer() don't need to set last_error, Juan Quintela, 2012/10/02