[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v4 0/5] ARM: Add NUMA support for machine virt
From: |
Ashok Kumar |
Subject: |
Re: [Qemu-devel] [PATCH v4 0/5] ARM: Add NUMA support for machine virt |
Date: |
Thu, 28 Jan 2016 22:32:27 -0800 |
User-agent: |
Mutt/1.4.2.2i |
Hi,
On Sat, Jan 23, 2016 at 07:36:41PM +0800, Shannon Zhao wrote:
> From: Shannon Zhao <address@hidden>
>
> Add NUMA support for machine virt. Tested successfully running a guest
> Linux kernel with the following patch applied:
>
> - [PATCH v9 0/6] arm64, numa: Add numa support for arm64 platforms
> https://lwn.net/Articles/672329/
> - [PATCH v2 0/4] ACPI based NUMA support for ARM64
> http://www.spinics.net/lists/linux-acpi/msg61795.html
>
> Changes since v3:
> * based on new kernel driver and device bindings
> * add ACPI part
>
> Changes since v2:
> * update to use NUMA node property arm,associativity.
>
> Changes since v1:
> Take into account Peter's comments:
> * rename virt_memory_init to arm_generate_memory_dtb
> * move arm_generate_memory_dtb to boot.c and make it a common func
> * use a struct numa_map to generate numa dtb
>
> Example qemu command line:
> qemu-system-aarch64 \
> -enable-kvm -smp 4\
> -kernel Image \
> -m 512 -machine virt,kernel_irqchip=on \
> -initrd guestfs.cpio.gz \
> -cpu host -nographic \
> -numa node,mem=256M,cpus=0-1,nodeid=0 \
> -numa node,mem=256M,cpus=2-3,nodeid=1 \
> -append "console=ttyAMA0 root=/dev/ram"
>
> Shannon Zhao (5):
> ARM: Virt: Add /distance-map node for NUMA
> ARM: Virt: Set numa-node-id for CPUs
> ARM: Add numa-node-id for /memory node
> include/hw/acpi/acpi-defs: Add GICC Affinity Structure
> hw/arm/virt-acpi-build: Generate SRAT table
>
> hw/arm/boot.c | 29 ++++++++++++++++++++++-
> hw/arm/virt-acpi-build.c | 58
> +++++++++++++++++++++++++++++++++++++++++++++
> hw/arm/virt.c | 37 +++++++++++++++++++++++++++++
> hw/i386/acpi-build.c | 2 +-
> include/hw/acpi/acpi-defs.h | 15 +++++++++++-
> 5 files changed, 138 insertions(+), 3 deletions(-)
>
> --
> 2.0.4
>
Don't we need to populate the NUMA node in the Affinity byte of MPIDR?
Linux uses the Affinity information in MPIDR to build topology which
might go wrong for the guest in this case.
Maybe a non Linux OS might be impacted more?
distance-map compatible string has been changed from
"numa,distance-map-v1" to "numa-distance-map-v1"
Thanks,
Ashok
- [Qemu-devel] [PATCH v4 0/5] ARM: Add NUMA support for machine virt, Shannon Zhao, 2016/01/23
- [Qemu-devel] [PATCH v4 4/5] include/hw/acpi/acpi-defs: Add GICC Affinity Structure, Shannon Zhao, 2016/01/23
- [Qemu-devel] [PATCH v4 1/5] ARM: Virt: Add /distance-map node for NUMA, Shannon Zhao, 2016/01/23
- [Qemu-devel] [PATCH v4 2/5] ARM: Virt: Set numa-node-id for CPUs, Shannon Zhao, 2016/01/23
- [Qemu-devel] [PATCH v4 5/5] hw/arm/virt-acpi-build: Generate SRAT table, Shannon Zhao, 2016/01/23
- [Qemu-devel] [PATCH v4 3/5] ARM: Add numa-node-id for /memory node, Shannon Zhao, 2016/01/23
- Re: [Qemu-devel] [PATCH v4 0/5] ARM: Add NUMA support for machine virt,
Ashok Kumar <=