summaryrefslogtreecommitdiff
path: root/include/qom
diff options
context:
space:
mode:
authorBharata B Rao <bharata@linux.vnet.ibm.com>2016-05-12 09:18:14 +0530
committerDavid Gibson <david@gibson.dropbear.id.au>2016-05-30 14:17:05 +1000
commit2c579042e3be50bb40a233a6986348b4f40ed026 (patch)
treeb68443cb824ef6abdcb0ed70cb3b94bfe4672c77 /include/qom
parent4c055ab54fae39b6329c57bcb5334d59b920463e (diff)
downloadqemu-2c579042e3be50bb40a233a6986348b4f40ed026.tar.gz
cpu: Add a sync version of cpu_remove()
This sync API will be used by the CPU hotplug code to wait for the CPU to completely get removed before flagging the failure to the device_add command. Sync version of this call is needed to correctly recover from CPU realization failures when ->plug() handler fails. Signed-off-by: Bharata B Rao <bharata@linux.vnet.ibm.com> Reviewed-by: David Gibson <david@gibson.dropbear.id.au> Acked-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Diffstat (limited to 'include/qom')
-rw-r--r--include/qom/cpu.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/include/qom/cpu.h b/include/qom/cpu.h
index 3b5775715b..32f3af3e1c 100644
--- a/include/qom/cpu.h
+++ b/include/qom/cpu.h
@@ -772,6 +772,14 @@ void cpu_resume(CPUState *cpu);
*/
void cpu_remove(CPUState *cpu);
+ /**
+ * cpu_remove_sync:
+ * @cpu: The CPU to remove.
+ *
+ * Requests the CPU to be removed and waits till it is removed.
+ */
+void cpu_remove_sync(CPUState *cpu);
+
/**
* qemu_init_vcpu:
* @cpu: The vCPU to initialize.