Messages in this thread | | | Date | Tue, 25 Nov 2014 13:43:26 -0500 | From | Boris Ostrovsky <> | Subject | Re: [PATCH 3.17 100/141] x86, microcode: Fix accessing dis_ucode_ldr on 32-bit |
| |
On 11/25/2014 01:24 PM, Borislav Petkov wrote: > On Tue, Nov 25, 2014 at 01:12:10PM -0500, Boris Ostrovsky wrote: >> On 11/19/2014 03:52 PM, Greg Kroah-Hartman wrote: >>> 3.17-stable review patch. If anyone has any objections, please let me know. >> >> This breaks PV on Xen. >> >> -boris >> >>> ------------------ >>> >>> From: Borislav Petkov <bp@suse.de> >>> >>> commit 85be07c32496dc264661308e4d9d4e9ccaff8072 upstream. >>> >>> We should be accessing it through a pointer, like on the BSP. >>> >>> Tested-by: Richard Hendershot <rshendershot@mchsi.com> >>> Fixes: 65cef1311d5d ("x86, microcode: Add a disable chicken bit") >>> Signed-off-by: Borislav Petkov <bp@suse.de> >>> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> >>> >>> --- >>> arch/x86/kernel/cpu/microcode/core_early.c | 2 +- >>> 1 file changed, 1 insertion(+), 1 deletion(-) >>> >>> --- 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)); > And practically the same line in check_loader_disabled_bsp() doesn't?
I don't think this routine is called on PV.
-boris
| |