From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:49533) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WG20t-0007Rh-Ky for qemu-devel@nongnu.org; Wed, 19 Feb 2014 02:56:20 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WG20m-0003VW-7N for qemu-devel@nongnu.org; Wed, 19 Feb 2014 02:56:15 -0500 Received: from [222.73.24.84] (port=44768 helo=song.cn.fujitsu.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WG20l-0003VB-Rd for qemu-devel@nongnu.org; Wed, 19 Feb 2014 02:56:08 -0500 From: Hu Tao Date: Wed, 19 Feb 2014 15:53:51 +0800 Message-Id: Subject: [Qemu-devel] [PATCH v18 00/14] Add support for binding guest numa nodes to host numa nodes List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: pbonzini@redhat.com, lersek@redhat.com, Wanlong Gao , imammedo@redhat.com The major change from v17 is the patchset is now based on memory backend. Example command line: ./x86_64-softmmu/qemu-system-x86_64 -hda /path/to/image.img -smp 2 \ -object memory-ram,size=512M,host-nodes=1,policy=membind,id=ram-node0 \ -numa node,nodeid=0,cpus=0,memdev=ram-node0 \ -object memory-ram,size=1024M,host-nodes=2-3,policy=interleave,id=ram-node1 \ -numa node,nodeid=1,cpus=1,memdev=ram-node1 \ -m 1536M There are some minor problems but I'd like to see if there are any problems in the general direction. Your comments are welcome! v17: https://lists.gnu.org/archive/html/qemu-devel/2013-12/msg00568.html Hu Tao (4): add memdev backend infrastructure visitor uint16list add memory backend ram field add query-memdev Igor Mammedov (1): qapi: add SIZE type parser to string_input_visitor Paolo Bonzini (3): pc: pass QEMUMachineInitArgs to pc_memory_init numa: introduce memory_region_allocate_system_memory numa: add -numa node,memdev= option Wanlong Gao (6): NUMA: move numa related code to new file numa.c NUMA: check if the total numa memory size is equal to ram_size NUMA: Add numa_info structure to contain numa nodes info NUMA: convert -numa option to use OptsVisitor NUMA: expand MAX_NODES from 64 to 128 qapi: add HostMemPolicy enum type Makefile.target | 2 +- backends/Makefile.objs | 2 + backends/hostmem-ram.c | 261 ++++++++++++++++++++++++++++++++++++++ backends/hostmem.c | 125 ++++++++++++++++++ cpus.c | 14 -- hw/i386/pc.c | 27 ++-- hw/i386/pc_piix.c | 8 +- hw/i386/pc_q35.c | 4 +- include/hw/i386/pc.h | 7 +- include/sysemu/cpus.h | 1 - include/sysemu/hostmem.h | 63 +++++++++ include/sysemu/sysemu.h | 23 +++- monitor.c | 2 +- numa.c | 260 +++++++++++++++++++++++++++++++++++++ qapi-schema.json | 85 +++++++++++++ qapi/string-input-visitor.c | 178 +++++++++++++++++++++++++- qmp-commands.hx | 30 +++++ tests/test-string-input-visitor.c | 22 ++++ vl.c | 155 ++-------------------- 19 files changed, 1076 insertions(+), 193 deletions(-) create mode 100644 backends/hostmem-ram.c create mode 100644 backends/hostmem.c create mode 100644 include/sysemu/hostmem.h create mode 100644 numa.c -- 1.8.5.2.229.g4448466