[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] [PATCH v2 7/7] monitor: fix crash for platforms without a
From: |
Cédric Le Goater |
Subject: |
Re: [Qemu-ppc] [PATCH v2 7/7] monitor: fix crash for platforms without a CPU 0 |
Date: |
Tue, 6 Sep 2016 08:28:48 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 |
On 09/05/2016 06:27 AM, David Gibson wrote:
> On Wed, Aug 31, 2016 at 06:34:15PM +0200, Cédric Le Goater wrote:
>> On PowerNV, CPU ids start at 0x8 or 0x20, we don't have a CPU 0
>> anymore. So let's use the first_cpu index to initialize the monitor.
>>
>> Signed-off-by: Cédric Le Goater <address@hidden>
>
> So we need a patch like this - amongst other fixes - in order to allow
> unplug of cpu 0. I'm not really sure whether to push it ahead now, or
> gather it up with other no-cpu-0 fixes and send them as a batch.
I think we could send it now as it removes an assumption on the cpu
number.
C.
>
>> ---
>>
>> So that you can dump the cpu list with the monitor :
>>
>> (qemu) info cpus
>> * CPU #8: nip=0x0000000000000010 thread_id=7742
>> CPU #16: nip=0x0000000000000010 thread_id=7740
>> CPU #24: nip=0x0000000000000010 thread_id=7740
>> CPU #32: nip=0x0000000000000010 thread_id=7740
>> CPU #40: nip=0x0000000000000010 thread_id=7740
>> CPU #48: nip=0x0000000000000010 thread_id=7740
>> CPU #72: nip=0x0000000000000010 thread_id=7740
>> CPU #80: nip=0x0000000000000010 thread_id=7740
>> CPU #136: nip=0x0000000000000010 thread_id=7740
>> CPU #144: nip=0x0000000000000010 thread_id=7740
>> CPU #152: nip=0x0000000000000010 thread_id=7740
>> CPU #160: nip=0x0000000000000010 thread_id=7740
>> CPU #168: nip=0x0000000000000010 thread_id=7740
>> CPU #176: nip=0x0000000000000010 thread_id=7740
>> CPU #200: nip=0x0000000000000010 thread_id=7740
>> CPU #208: nip=0x0000000000000010 thread_id=7740
>>
>> monitor.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/monitor.c b/monitor.c
>> index e9009de09a6c..19b8ec14f40e 100644
>> --- a/monitor.c
>> +++ b/monitor.c
>> @@ -1027,7 +1027,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);
>> }
>> cpu_synchronize_state(cur_mon->mon_cpu);
>> return cur_mon->mon_cpu;
>