2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-30 16:13:54 +08:00
linux-next/arch/x86/kernel/acpi
Petr Vandrovec ac909ec308 ACPI: Fix use-after-free in acpi_map_lsapic
When processor is being hot-added to the system, acpi_map_lsapic invokes
ACPI _MAT method to find APIC ID and flags, verifies that returned structure
is indeed ACPI's local APIC structure, and that flags contain MADT_ENABLED
bit.  Then saves APIC ID, frees structure - and accesses structure when
computing arguments for acpi_register_lapic call.  Which sometime leads
to acpi_register_lapic call being made with second argument zero, failing
to bring processor online with error 'Unable to map lapic to logical cpu
number'.

As lapic->lapic_flags & ACPI_MADT_ENABLED was already confirmed to be non-zero
few lines above, we can just pass unconditional ACPI_MADT_ENABLED to the
acpi_register_lapic.

Signed-off-by: Petr Vandrovec <petr@vmware.com>
Signed-off-by: Alok N Kataria <akataria@vmware.com>
Reviewed-by: Toshi Kani <toshi.kani@hp.com>
Signed-off-by: Len Brown <len.brown@intel.com>
2012-03-30 03:31:58 -04:00
..
realmode x86, suspend: Restore MISC_ENABLE MSR in realmode wakeup 2011-07-06 20:09:34 -07:00
boot.c ACPI: Fix use-after-free in acpi_map_lsapic 2012-03-30 03:31:58 -04:00
cstate.c x86 idle: move mwait_idle_with_hints() to where it is used 2011-08-03 19:06:36 -04:00
Makefile ACPI: processor: unify arch_acpi_processor_cleanup_pdc 2009-12-22 03:24:14 -05:00
sleep.c x86, suspend: Restore MISC_ENABLE MSR in realmode wakeup 2011-07-06 20:09:34 -07:00
sleep.h Merge branch 'linus' into release 2011-03-23 02:34:54 -04:00
wakeup_32.S Rename .text.page_aligned to .text..page_aligned. 2010-03-03 11:26:00 +01:00
wakeup_64.S Merge branches 'x86/acpi', 'x86/apic', 'x86/asm', 'x86/cleanups', 'x86/mm', 'x86/signal' and 'x86/urgent'; commit 'v2.6.29-rc6' into x86/core 2009-02-24 21:50:43 +01:00
wakeup_rm.S x86: Fix binutils-2.21 symbol related build failures 2011-03-09 10:25:45 +01:00