qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH V8 01/11] NUMA: add NumaOptions, NumaNodeOptions


From: Wanlong Gao
Subject: Re: [Qemu-devel] [PATCH V8 01/11] NUMA: add NumaOptions, NumaNodeOptions and NumaMemOptions
Date: Thu, 22 Aug 2013 11:16:47 +0800
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130805 Thunderbird/17.0.8

On 08/22/2013 10:29 AM, Eric Blake wrote:
> On 08/21/2013 07:12 PM, Wanlong Gao wrote:
> 
>>>> +   '*mem':    'str' }}
>>>
>>> Why is size passed as a 'str' instead of an integral type?  If anything,
>>> at the QMP layer, it should be an integer representing size in bytes
>>> (the command line and HMP are already capable of converting shorthand
>>> like 1G into proper byte counts for use in QAPI).
>>
>> Since the original "mem" options is MB default, but "size" type is byte 
>> default,
>> so we should pass a "str" first to be consistent with original option.
> 
> No. HMP is human-friendly - it can default to M.  QMP is
> machine-friendly - it should default to bytes and take an 'int' rather
> than a 'str'.  Part of the glue between HMP and QMP is converting from
> human-friendly to machine-friendly, so that QMP doesn't have to carry cruft.

This "mem" options is only for command line options, I can't understand you
are saying QMP command here. Because the original "mem" option treat "1024"
as "1024MB", but if I set this to "size" type, this "mem" options will
treat "1024" as "124B". So I should pass a str first and make it to "MB"
default in the options parse function to be consistent with original one.

> 
> 
>>>> +#
>>>> +# @nodeid: #optional NUMA node ID
>>>> +#
>>>> +# @size: #optional memory size of this node
>>>
>>> If everything is optional, then what defaults are used if I specify
>>> nothing?  Should nodeid be mandatory (here, and in NumaNodeOptions)?
>>
>> The defaults are all consistent with original behaviour. If nodeid is
>> omitted, the option will be assigned node by node from node0.
> 
> What will be assigned?  If I omit both nodeid and size, there's nothing

If the "-m" option assigned the total memory size is 2G, then if you omit
both nodeid and memory size in the options, for example two "-numa mem,"
options here, it will split total memory across these two node to :
node0 1G
node1 1G

This is the original behaviour and I didn't change any.

Thanks,
Wanlong Gao

> left in the object I'm passing.  Just because HMP can do sane defaults
> doesn't mean that QMP needs to mark all fields as optional.
> 




reply via email to

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