qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v4 0/5] Add a valid_cpu_types property


From: Alistair Francis
Subject: Re: [Qemu-devel] [PATCH v4 0/5] Add a valid_cpu_types property
Date: Tue, 19 Dec 2017 16:55:33 -0800

On Tue, Dec 19, 2017 at 4:43 PM, Peter Maydell <address@hidden> wrote:
> On 20 December 2017 at 00:27, Alistair Francis
> <address@hidden> wrote:
>> There are numorous QEMU machines that only have a single or a handful of
>> valid CPU options. To simplyfy the management of specificying which CPU
>> is/isn't valid let's create a property that can be set in the machine
>> init. We can then check to see if the user supplied CPU is in that list
>> or not.
>>
>> I have added the valid_cpu_types for some ARM machines only at the
>> moment.
>>
>> Here is what specifying the CPUs looks like now:
>>
>> $ aarch64-softmmu/qemu-system-aarch64 -M netduino2 -kernel ./u-boot.elf 
>> -nographic -cpu "cortex-m3" -S
>> QEMU 2.10.50 monitor - type 'help' for more information
>> (qemu) info cpus
>> * CPU #0: thread_id=24175
>> (qemu) q
>>
>> $ aarch64-softmmu/qemu-system-aarch64 -M netduino2 -kernel ./u-boot.elf 
>> -nographic -cpu "cortex-m4" -S
>> QEMU 2.10.50 monitor - type 'help' for more information
>> (qemu) q
>>
>> $ aarch64-softmmu/qemu-system-aarch64 -M netduino2 -kernel ./u-boot.elf 
>> -nographic -cpu "cortex-m5" -S
>> qemu-system-aarch64: unable to find CPU model 'cortex-m5'
>>
>> $ aarch64-softmmu/qemu-system-aarch64 -M netduino2 -kernel ./u-boot.elf 
>> -nographic -cpu "cortex-a9" -S
>> qemu-system-aarch64: Invalid CPU type: cortex-a9-arm-cpu
>> The valid types are: cortex-m3-arm-cpu, cortex-m4-arm-cpu
>
> Thanks for this; we really should be more strict about
> forbidding "won't work" combinations than we have
> been in the past.
>
> In the last of these cases, I think that when we
> list the invalid CPU type and the valid types
> we should use the same names we want the user to
> use on the command line, without the "-arm-cpu"
> suffixes.

Hmm... That is a good point, it is confusing that they don't line up.

The problem is that we are just doing a simple
object_class_dynamic_cast() in hw/core/machine.c which I think
(untested) requires us to have the full name in the valid cpu array.

Alistair

>
> thanks
> -- PMM



reply via email to

[Prev in Thread] Current Thread [Next in Thread]