From: Borislav Petkov Date: Wed, 5 Nov 2014 16:28:06 +0000 (+0100) Subject: x86, microcode: Fix accessing dis_ucode_ldr on 32-bit X-Git-Tag: v3.17.4~42 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=af07bb46530c26de20eeeafea7f7272d5d5d78c1;p=thirdparty%2Fkernel%2Fstable.git x86, microcode: Fix accessing dis_ucode_ldr on 32-bit commit 85be07c32496dc264661308e4d9d4e9ccaff8072 upstream. We should be accessing it through a pointer, like on the BSP. Tested-by: Richard Hendershot Fixes: 65cef1311d5d ("x86, microcode: Add a disable chicken bit") Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman --- diff --git a/arch/x86/kernel/cpu/microcode/core_early.c b/arch/x86/kernel/cpu/microcode/core_early.c index 5f28a64e71ea9..2c017f242a781 100644 --- a/arch/x86/kernel/cpu/microcode/core_early.c +++ b/arch/x86/kernel/cpu/microcode/core_early.c @@ -124,7 +124,7 @@ void __init load_ucode_bsp(void) static bool check_loader_disabled_ap(void) { #ifdef CONFIG_X86_32 - return __pa_nodebug(dis_ucode_ldr); + return *((bool *)__pa_nodebug(&dis_ucode_ldr)); #else return dis_ucode_ldr; #endif