qemu/hw/acpi
Jonathan Cameron 04b3d34d5c hmat acpi: Fix out of bounds access due to missing use of indirection
With a numa set up such as

-numa nodeid=0,cpus=0 \
-numa nodeid=1,memdev=mem \
-numa nodeid=2,cpus=1

and appropriate hmat_lb entries the initiator list is correctly
computed and writen to HMAT as 0,2 but then the LB data is accessed
using the node id (here 2), landing outside the entry_list array.

Stash the reverse lookup when writing the initiator list and use
it to get the correct array index index.

Fixes: 4586a2cb83 ("hmat acpi: Build System Locality Latency and Bandwidth Information Structure(s)")
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Message-Id: <20240307160326.31570-3-Jonathan.Cameron@huawei.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
(cherry picked from commit 74e2845c5f)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
2024-03-14 21:24:34 +03:00
..
acpi_interface.c acpi: add interface to build device specific AML 2022-06-09 19:32:48 -04:00
acpi-cpu-hotplug-stub.c
acpi-mem-hotplug-stub.c
acpi-nvdimm-stub.c
acpi-pci-hotplug-stub.c
acpi-stub.c
acpi-x86-stub.c
aml-build-stub.c acpi: pc: vga: use AcpiDevAmlIf interface to build VGA device descriptors 2022-11-07 14:00:29 -05:00
aml-build.c acpi: fadt: support revision 6.0 of the ACPI specification 2022-11-07 13:12:19 -05:00
bios-linker-loader.c
core.c
cpu_hotplug.c acpi: cpuhp: fix guest-visible maximum access size to the legacy reg block 2023-03-29 10:20:04 +03:00
cpu.c
cxl-stub.c acpi/cxl: Add _OSC implementation (9.14.2) 2022-05-13 06:13:36 -04:00
cxl.c hw/acpi/cxl: Pass in the CXLState directly rather than MachineState 2022-06-09 19:32:49 -04:00
erst.c hw/acpi/erst: Do not ignore Error* in realize handler 2023-12-20 19:11:10 +03:00
generic_event_device.c hw/acpi: Add ospm_status hook implementation for acpi-ged 2022-09-22 16:38:28 +01:00
ghes-stub.c
ghes.c Fix 'writeable' typos 2022-06-08 19:38:47 +01:00
hmat.c hmat acpi: Fix out of bounds access due to missing use of indirection 2024-03-14 21:24:34 +03:00
hmat.h
ich9.c
ipmi-stub.c acpi: ipmi: use AcpiDevAmlIf interface to build IPMI device descriptors 2022-06-09 19:32:49 -04:00
ipmi.c acpi: ipmi: use AcpiDevAmlIf interface to build IPMI device descriptors 2022-06-09 19:32:49 -04:00
Kconfig acpi/cxl: Add _OSC implementation (9.14.2) 2022-05-13 06:13:36 -04:00
memory_hotplug.c
meson.build acpi: add interface to build device specific AML 2022-06-09 19:32:48 -04:00
nvdimm.c acpi/nvdimm: Implement ACPI NVDIMM Label Methods 2022-11-02 06:56:31 -04:00
pci.c
pcihp.c acpi: pcihp: allow repeating hot-unplug requests 2023-05-18 21:09:41 +03:00
piix4.c hw/acpi/piix4: remove unused piix4_pm_initfn() function 2022-06-11 11:44:47 +02:00
tco.c
tpm.c
trace-events acpi/nvdimm: Define trace events for NVDIMM and substitute nvdimm_debug() 2022-07-26 10:37:46 -04:00
trace.h
utils.c
viot.c hw/acpi/viot: sort VIOT ACPI table entries by PCI host bridge min_bus 2022-06-09 19:32:49 -04:00
viot.h
vmgenid.c