mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-24 14:45:24 +00:00
e5a0579996
This patch addresses the same aspects on PPC the bug 1103314 addressed on x86. PCI expander bus creates multiple primary PCI busses, where each of these busses can be assigned a specific NUMA affinity, which, on x86 is advertised through ACPI on a per-bus basis. For SPAPR, a PHB's NUMA affinities are assigned on a per-PHB basis, and there is no mechanism for advertising NUMA affinities to a guest on a per-bus basis. So, even if qemu-ppc manages to get some sort of multi-bus topology working using PXB, there is no way to expose the affinities of these busses to the guest. It can only be exposed on a per-PHB/per-domain basis. So patch enables NUMA node tag in pci-root controller on PPC. The way to set the NUMA node is through the numa_node option of spapr-pci-host-bridge device. However for the implicit PHB, the only way to set the numa_node is from the -global option. The -global option applies to all the PHBs unless explicitly specified with the option on the respective PHB of CLI. The default PHB has the emulated devices only, so the patch prevents setting the NUMA node for the default PHB. Signed-off-by: Shivaprasad G Bhat <sbhat@linux.vnet.ibm.com> Reviewed-by: Andrea Bolognani <abologna@redhat.com>
29 lines
869 B
Plaintext
29 lines
869 B
Plaintext
LC_ALL=C \
|
|
PATH=/bin \
|
|
HOME=/home/test \
|
|
USER=test \
|
|
LOGNAME=test \
|
|
QEMU_AUDIO_DRV=none \
|
|
/usr/bin/qemu-system-ppc64 \
|
|
-name QEMUGuest1 \
|
|
-S \
|
|
-M pseries \
|
|
-m 2048 \
|
|
-smp 8,sockets=2,cores=1,threads=4 \
|
|
-object memory-backend-ram,id=ram-node0,size=1073741824,host-nodes=1,\
|
|
policy=bind \
|
|
-numa node,nodeid=0,cpus=0-3,memdev=ram-node0 \
|
|
-object memory-backend-ram,id=ram-node1,size=1073741824,host-nodes=2,\
|
|
policy=bind \
|
|
-numa node,nodeid=1,cpus=4-7,memdev=ram-node1 \
|
|
-uuid 87eedafe-eedc-4336-8130-ed9fe5dc90c8 \
|
|
-nographic \
|
|
-nodefaults \
|
|
-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\
|
|
server,nowait \
|
|
-mon chardev=charmonitor,id=monitor,mode=readline \
|
|
-boot c \
|
|
-device spapr-pci-host-bridge,index=1,id=pci.1,numa_node=1 \
|
|
-device spapr-pci-host-bridge,index=2,id=pci.2 \
|
|
-device spapr-pci-host-bridge,index=3,id=pci.3,numa_node=0
|