Messages in this thread Patch in this message | | | From | Li Zhong <> | Subject | [PATCH v1] arch/x86/kernel/acpi: check the return value of mp_find_ioapic() | Date | Fri, 2 Sep 2022 00:50:53 -0700 |
| |
Check the return value of mp_find_ioapic(), which could be -1. Since ioapic will be used as index in mpc_ioapic_id(), we should check the return value ioapic here.
Signed-off-by: Li Zhong <floridsleeves@gmail.com> --- arch/x86/kernel/acpi/boot.c | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c index 907cc98b1938..687111adfb90 100644 --- a/arch/x86/kernel/acpi/boot.c +++ b/arch/x86/kernel/acpi/boot.c @@ -463,6 +463,10 @@ static void mp_config_acpi_gsi(struct device *dev, u32 gsi, int trigger, mp_irq.srcbus = number; mp_irq.srcbusirq = (((devfn >> 3) & 0x1f) << 2) | ((pin - 1) & 3); ioapic = mp_find_ioapic(gsi); + if (ioapic < 0) { + pr_warn("Failed to find ioapic for gsi : %u\n", gsi); + return; + } mp_irq.dstapic = mpc_ioapic_id(ioapic); mp_irq.dstirq = mp_find_ioapic_pin(ioapic, gsi); -- 2.25.1
| |