]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
acpi,srat: Fix incorrect device handle check for Generic Initiator
authorShuai Xue <xueshuai@linux.alibaba.com>
Sat, 13 Sep 2025 02:32:24 +0000 (10:32 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 24 Nov 2025 09:35:53 +0000 (10:35 +0100)
[ Upstream commit 7c3643f204edf1c5edb12b36b34838683ee5f8dc ]

The Generic Initiator Affinity Structure in SRAT table uses device
handle type field to indicate the device type. According to ACPI
specification, the device handle type value of 1 represents PCI device,
not 0.

Fixes: 894c26a1c274 ("ACPI: Support Generic Initiator only domains")
Reported-by: Wu Zongyong <wuzongyong@linux.alibaba.com>
Signed-off-by: Shuai Xue <xueshuai@linux.alibaba.com>
Reviewed-by: Jonathan Cameron <jonathan.cameron@huawei.com>
Link: https://patch.msgid.link/20250913023224.39281-1-xueshuai@linux.alibaba.com
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/acpi/numa/srat.c

index bec0dcd1f9c3893e1694673d09a7c6cc0cbe0bf6..dccdc062d8aa362bad9e855f4cb62f4cc78b2ecc 100644 (file)
@@ -143,7 +143,7 @@ acpi_table_print_srat_entry(struct acpi_subtable_header *header)
                struct acpi_srat_generic_affinity *p =
                        (struct acpi_srat_generic_affinity *)header;
 
-               if (p->device_handle_type == 0) {
+               if (p->device_handle_type == 1) {
                        /*
                         * For pci devices this may be the only place they
                         * are assigned a proximity domain