On 31.12.19 16:44, Philippe Mathieu-Daudé wrote:
> On 12/31/19 2:03 PM, Igor Mammedov wrote:
>> If user provided non-sense RAM size, board will complain and
>> continue running with max RAM size supported.
>> Also RAM is going to be allocated by generic code, so it won't be
>> possible for board to fix things up for user.
>>
>> Make it error message and exit to force user fix CLI,
>> instead of accepting non-sense CLI values.
>>
>> Signed-off-by: Igor Mammedov <imamm...@redhat.com>
>> ---
>>   hw/hppa/machine.c | 3 ++-
>>   1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/hw/hppa/machine.c b/hw/hppa/machine.c
>> index 5d0de26..25f5afc 100644
>> --- a/hw/hppa/machine.c
>> +++ b/hw/hppa/machine.c
>> @@ -92,7 +92,8 @@ static void machine_hppa_init(MachineState *machine)
>>         /* Limit main memory. */
>>       if (ram_size > FIRMWARE_START) {
>> -        machine->ram_size = ram_size = FIRMWARE_START;
>> +        error_report("RAM size more than %d is not supported", 
>> FIRMWARE_START);
>> +        exit(EXIT_FAILURE);
>
> $ qemu-system-hppa -m 3841m
> qemu-system-hppa: invalid accelerator kvm
> qemu-system-hppa: falling back to tcg
> qemu-system-hppa: RAM size more than -268435456 is not supported
>
> Instead of using qemu_strtosz_MiB on FIRMWARE_START or unsigned format, we 
> can simply use "RAM size more than 3840m is not supported". Is that OK with 
> you?

I don't really like that change.

We currently only emulate a 32-bit system, and for those 4GB is the maximum.
So, if I start my machine with "qemu-system-hppa -m 4G", the current code
then automatically uses the maximum possible of 3841MB (which is limited by
firmware start address).
I don't expect users to know the excact 3841MB number.
Even on a phyiscal machine you can only add DIMMs of sizes 2GB, 3GB or 4GB,
but not "3841MB".

So, I think that patch is - although it's more correct - not a
benefit for the end user.

Helge

Reply via email to