Now that we allow CPU hot unplug on a few platforms, we can end up in a
situation where we don't have a CPU with index 0.  Or at least we could,
if we didn't have code to explicitly prohibit unplug of CPU 0.

Longer term we want to allow CPU 0 unplug, this patch is an early step in
allowing this, by removing an assumption in the monitor code that CPU 0
always exists.

Signed-off-by: C├ędric Le Goater <>
[dwg: Rewrote commit message to better explain background]
Signed-off-by: David Gibson <>
 monitor.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Anyone want to volunteer to take this through their tree?  If not, I
can take it through my ppc tree.

diff --git a/monitor.c b/monitor.c
index 8bb8bbf..83c4edf 100644
--- a/monitor.c
+++ b/monitor.c
@@ -1025,7 +1025,7 @@ int monitor_set_cpu(int cpu_index)
 CPUState *mon_get_cpu(void)
     if (!cur_mon->mon_cpu) {
-        monitor_set_cpu(0);
+        monitor_set_cpu(first_cpu->cpu_index);
     return cur_mon->mon_cpu;

Reply via email to