From: Bharata B Rao <bhar...@linux.vnet.ibm.com> Ensure that the unplugged CPU thread is destroyed and the waiting thread is notified about it. This is needed for CPU unplug to work correctly in MTTCG mode.
Signed-off-by: Bharata B Rao <bhar...@linux.vnet.ibm.com> Signed-off-by: Nikunj A Dadhania <nik...@linux.vnet.ibm.com> Signed-off-by: David Gibson <da...@gibson.dropbear.id.au> --- cpus.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/cpus.c b/cpus.c index 740b8dc..79f780b 100644 --- a/cpus.c +++ b/cpus.c @@ -1483,6 +1483,12 @@ static void *qemu_tcg_cpu_thread_fn(void *arg) /* Ignore everything else? */ break; } + } else if (cpu->unplug) { + qemu_tcg_destroy_vcpu(cpu); + cpu->created = false; + qemu_cond_signal(&qemu_cpu_cond); + qemu_mutex_unlock_iothread(); + return NULL; } atomic_mb_set(&cpu->exit_request, 0); -- 2.9.3