linux/include/acpi
Lorenzo Pieralisi 1ca8677d9f ACPI: PCI: IRQ: Fix INTx GSIs signedness
In ACPI Global System Interrupts (GSIs) are described using a 32-bit
value.

ACPI/PCI legacy interrupts (INTx) parsing code treats GSIs as 'int',
which poses issues if the GSI interrupt value is a 32-bit value with the
MSB set (as required in some interrupt configurations - eg ARM64 GICv5
systems) because acpi_pci_link_allocate_irq() treats a negative gsi
return value as a failed GSI allocation (and acpi_irq_get_penalty()
would trigger an out-of-bounds array dereference if the 'irq' param is
a negative value).

Fix ACPI/PCI legacy INTx parsing by converting variables representing
GSIs from 'int' to 'u32' bringing the code in line with the ACPI
specification and fixing the current parsing issue.

Signed-off-by: Lorenzo Pieralisi <lpieralisi@kernel.org>
Reviewed-by: Bjorn Helgaas <bhelgaas@google.com>
Link: https://patch.msgid.link/20260105101705.36703-1-lpieralisi@kernel.org
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2026-01-05 19:06:40 +01:00
..
platform
acbuffer.h
acconfig.h
acexcep.h
acnames.h
acoutput.h
acpi.h
acpi_bus.h
acpi_drivers.h
acpi_io.h
acpi_lpat.h
acpi_numa.h
acpiosxf.h
acpixf.h
acrestyp.h
actbl.h
actbl1.h
actbl2.h
actbl3.h
actypes.h
acuuid.h
apei.h
battery.h
button.h
cppc_acpi.h
ghes.h
hed.h
nfit.h
nhlt.h
pcc.h
proc_cap_intel.h
processor.h
reboot.h
video.h