qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [RFC 0/6] enable numa configuration before machine_init


From: Daniel P. Berrange
Subject: Re: [Qemu-devel] [RFC 0/6] enable numa configuration before machine_init() from HMP/QMP
Date: Mon, 16 Oct 2017 17:36:36 +0100
User-agent: Mutt/1.9.0 (2017-09-02)

On Mon, Oct 16, 2017 at 06:22:50PM +0200, Igor Mammedov wrote:
> Series allows to configure NUMA mapping at runtime using QMP/HMP
> interface. For that to happen it introduces a new '-paused' CLI option
> which allows to pause QEMU before machine_init() is run and
> adds new set-numa-node HMP/QMP commands which in conjuction with
> info hotpluggable-cpus/query-hotpluggable-cpus allow to configure
> NUMA mapping for cpus.

What's the problem we're seeking solve here compared to what we currently
do for NUMA configuration ?

> 
> HMP configuration session for CLI '-smp 1,maxcpus=2' would look like:
> 
> (qemu) info hotpluggable-cpus 
> Hotpluggable CPUs:
>   type: "qemu64-x86_64-cpu"
>   vcpus_count: "1"
>   CPUInstance Properties:
>     socket-id: "1"
>     core-id: "0"
>     thread-id: "0"
>   type: "qemu64-x86_64-cpu"
>   vcpus_count: "1"
>   qom_path: "/machine/unattached/device[0]"
>   CPUInstance Properties:
>     socket-id: "0"
>     core-id: "0"
>     thread-id: "0"
> (qemu) set-numa-node node,nodeid=0
> (qemu) set-numa-node node,nodeid=1
> (qemu) set-numa-node cpu,socket-id=0,node-id=0
> (qemu) set-numa-node cpu,socket-id=1,node-id=1
> (qemu) info hotpluggable-cpus 
> Hotpluggable CPUs:
>   type: "qemu64-x86_64-cpu"
>   vcpus_count: "1"
>   CPUInstance Properties:
>     node-id: "1"
>     socket-id: "1"
>     core-id: "0"
>     thread-id: "0"
>   type: "qemu64-x86_64-cpu"
>   vcpus_count: "1"
>   CPUInstance Properties:
>     node-id: "0"
>     socket-id: "0"
>     core-id: "0"
>     thread-id: "0"
> (qemu) cont
> 
> git tree for testing:
>   https://github.com/imammedo/qemu qmp_preconfig_rfc
> 
> 
> CC: address@hidden
> CC: address@hidden
> CC: address@hidden
> CC: address@hidden
> CC: address@hidden
> CC: address@hidden
> CC: address@hidden
> CC: address@hidden
> 
> Igor Mammedov (6):
>   numa: postpone options post-processing till machine_run_board_init()
>   numa: split out NumaOptions parsing into parse_NumaOptions()
>   possible_cpus: add CPUArchId::type field
>   CLI: add -paused option
>   HMP: add set-numa-node command
>   QMP: add set-numa-node command
> 
>  hmp.h                      |  1 +
>  include/hw/boards.h        |  2 ++
>  include/sysemu/numa.h      |  2 ++
>  include/sysemu/sysemu.h    |  1 +
>  hmp-commands.hx            | 13 ++++++++
>  hmp.c                      | 23 ++++++++++++++
>  hw/arm/virt.c              |  3 +-
>  hw/core/machine.c          | 18 ++++++-----
>  hw/i386/pc.c               |  4 ++-
>  hw/ppc/spapr.c             | 13 +++++---
>  hw/s390x/s390-virtio-ccw.c |  1 +
>  numa.c                     | 79 
> ++++++++++++++++++++++++++++++++++------------
>  qapi-schema.json           | 13 ++++++++
>  qemu-options.hx            | 15 +++++++++
>  qmp.c                      |  5 +++
>  vl.c                       | 54 ++++++++++++++++++++++++++++++-
>  16 files changed, 210 insertions(+), 37 deletions(-)
> 
> -- 
> 2.7.4
> 
> 

Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|



reply via email to

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