• D
    hw/acpi-build: Add a check for memory-less NUMA nodes · 16b42263
    Dou Liyang 提交于
    Currently, Qemu ACPI builder doesn't consider the memory-less NUMA nodes, eg:
    
      -m 4G,slots=4,maxmem=8G \
      -numa node,nodeid=0 \
      -numa node,nodeid=1,mem=2G \
      -numa node,nodeid=2,mem=2G \
      -numa node,nodeid=3\
    
    Guest Linux will report
    
      [    0.000000] ACPI: SRAT: Node 0 PXM 0 [mem 0x00000000-0xffffffffffffffff]
      [    0.000000] ACPI: SRAT: Node 1 PXM 1 [mem 0x00000000-0x0009ffff]
      [    0.000000] ACPI: SRAT: Node 1 PXM 1 [mem 0x00100000-0x7fffffff]
      [    0.000000] ACPI: SRAT: Node 2 PXM 2 [mem 0x80000000-0xbfffffff]
      [    0.000000] ACPI: SRAT: Node 2 PXM 2 [mem 0x100000000-0x13fffffff]
      [    0.000000] ACPI: SRAT: Node 3 PXM 3 [mem 0x140000000-0x13fffffff]
      [    0.000000] ACPI: SRAT: Node 3 PXM 3 [mem 0x140000000-0x33fffffff] hotplug
    
    [mem 0x00000000-0xffffffffffffffff] and [mem 0x140000000-0x13fffffff] are bogus.
    
    Add a check to avoid building srat memory for memory-less NUMA nodes, also update
    the test file. Now the info in guest linux will be
    
      [    0.000000] ACPI: SRAT: Node 1 PXM 1 [mem 0x00000000-0x0009ffff]
      [    0.000000] ACPI: SRAT: Node 1 PXM 1 [mem 0x00100000-0x7fffffff]
      [    0.000000] ACPI: SRAT: Node 2 PXM 2 [mem 0x80000000-0xbfffffff]
      [    0.000000] ACPI: SRAT: Node 2 PXM 2 [mem 0x100000000-0x13fffffff]
      [    0.000000] ACPI: SRAT: Node 3 PXM 3 [mem 0x140000000-0x33fffffff] hotplug
    Signed-off-by: NDou Liyang <douly.fnst@cn.fujitsu.com>
    Reviewed-by: NIgor Mammedov <imammedo@redhat.com>
    Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
    Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
    16b42263
acpi-build.c 99.7 KB