[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH V6 01/11] NUMA: add NumaOptions, NumaNodeOptions
From: |
Laszlo Ersek |
Subject: |
Re: [Qemu-devel] [PATCH V6 01/11] NUMA: add NumaOptions, NumaNodeOptions and NumaMemOptions |
Date: |
Tue, 30 Jul 2013 12:52:04 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130621 Thunderbird/17.0.7 |
On 07/30/13 09:32, Wanlong Gao wrote:
> +##
> +# @UInt16
> +#
> +# Let "uint16" be entry-wise
> +#
> +# @u16: a "uint16" type value
> +#
> +# Since 1.7
> +##
> +{ 'type': 'UInt16', 'data': { 'u16': 'uint16' }}
Ah sorry, I should have spelled this out more clearly -- I only
mentioned it in my OptsVisitor series' cover letter (not the RFC one,
just the PATCH one):
On 07/22/13 23:07, Laszlo Ersek wrote:
> rfc->v1:
> ...
> - updated the cover letter to take native lists into account, plus
> cleaned it up.
> ...
> (Commit eb7ee2cb ("qapi: introduce OptsVisitor") had originally
> documented OptsVisitor's general schema requirements for parsing
> repeated options such that the list element type had to be a struct
> with one mandatory scalar field. Accordingly, the RFC version of this
> series required for interval flattening that this underlying scalar
> type be an integer type. However, since commit a678e26c ("qapi: pad
> GenericList value fields to 64 bits") we've had reliable native lists;
> OptsVisitor turns out to support them automatically.)
IOW, you can drop the UInt16 wrapper struct, and below:
> +
> +##
> +# @NumaOptions
> +#
> +# A discriminated record of NUMA options.
> +#
> +# Since 1.7
> +##
> +{ 'union': 'NumaOptions',
> + 'data': {
> + 'node': 'NumaNodeOptions',
> + 'mem': 'NumaMemOptions' }}
> +
> +##
> +# @NumaNodeOptions
> +#
> +# Create a guest NUMA node.
> +#
> +# @nodeid: #optional NUMA node ID
> +#
> +# @cpus: #optional VCPUs belong to this node
> +#
> +# @mem: #optional memory size of this node (remain as legacy)
> +#
> +# Since: 1.7
> +##
> +{ 'type': 'NumaNodeOptions',
> + 'data': {
> + '*nodeid': 'uint16',
> + '*cpus': ['UInt16'],
> + '*mem': 'str' }}
you can use plain ['uint16'] as type. (You can also glance at 8/8 (unit
test schema) in my series.)
> +
> +##
> +# @NumaMemOptions
> +#
> +# Set memory information of guest NUMA node.
> +#
> +# @nodeid: #optional NUMA node ID
> +#
> +# @size: #optional memory size of this node
> +#
> +# Since 1.7
> +##
> +{ 'type': 'NumaMemOptions',
> + 'data': {
> + '*nodeid': 'uint16',
> + '*size': 'size' }}
>
Rest looks good for this patch I think.
Laszlo
- [Qemu-devel] [PATCH V6 00/11] Add support for binding guest numa nodes to host numa nodes, Wanlong Gao, 2013/07/30
- [Qemu-devel] [PATCH V6 01/11] NUMA: add NumaOptions, NumaNodeOptions and NumaMemOptions, Wanlong Gao, 2013/07/30
- Re: [Qemu-devel] [PATCH V6 01/11] NUMA: add NumaOptions, NumaNodeOptions and NumaMemOptions,
Laszlo Ersek <=
- [Qemu-devel] [PATCH V6 03/11] NUMA: move numa related code to numa.c, Wanlong Gao, 2013/07/30
- [Qemu-devel] [PATCH V6 02/11] NUMA: split -numa option, Wanlong Gao, 2013/07/30
- [Qemu-devel] [PATCH V6 05/11] NUMA: Add Linux libnuma detection, Wanlong Gao, 2013/07/30
- [Qemu-devel] [PATCH V6 04/11] NUMA: Add numa_info structure to contain numa nodes info, Wanlong Gao, 2013/07/30
- [Qemu-devel] [PATCH V6 07/11] NUMA: set guest numa nodes memory policy, Wanlong Gao, 2013/07/30
- [Qemu-devel] [PATCH V6 06/11] NUMA: parse guest numa nodes memory policy, Wanlong Gao, 2013/07/30
- [Qemu-devel] [PATCH V6 09/11] NUMA: add hmp command set-mem-policy, Wanlong Gao, 2013/07/30
- [Qemu-devel] [PATCH V6 08/11] NUMA: add qmp command set-mem-policy to set memory policy for NUMA node, Wanlong Gao, 2013/07/30