On Wed, Nov 26, 2014 at 08:44:43PM +0100, Borislav Petkov wrote:
> Guys,
> 
> please do not pick up this patch for stable because it breaks 32-bit
> microcode loading on intel. I'll let you know once I have a fix.
> 

Thanks Boris, I'll drop it from the 3.16 kernel that is currently
under review.

Cheers,
--
Luís

> Thanks.
> 
> ----- Forwarded message from tip-bot for Borislav Petkov <[email protected]> 
> -----
> 
> Date: Tue, 18 Nov 2014 09:40:23 -0800
> From: tip-bot for Borislav Petkov <[email protected]>
> To: [email protected]
> Cc: [email protected], [email protected], [email protected], 
> [email protected], [email protected], [email protected], 
> [email protected]
> Subject: [tip:x86/urgent] x86, microcode: Update BSPs microcode on resume
> X-Mailer: tip-git-log-daemon
> Message-ID: <[email protected]>
> 
> Commit-ID:  fb86b97300d930b57471068720c52bfa8622eab7
> Gitweb:     http://git.kernel.org/tip/fb86b97300d930b57471068720c52bfa8622eab7
> Author:     Borislav Petkov <[email protected]>
> AuthorDate: Tue, 18 Nov 2014 10:46:57 +0100
> Committer:  Thomas Gleixner <[email protected]>
> CommitDate: Tue, 18 Nov 2014 18:32:24 +0100
> 
> x86, microcode: Update BSPs microcode on resume
> 
> In the situation when we apply early microcode but do *not* apply late
> microcode, we fail to update the BSP's microcode on resume because we
> haven't initialized the uci->mc microcode pointer. So, in order to
> alleviate that, we go and dig out the stashed microcode patch during
> early boot. It is basically the same thing that is done on the APs early
> during boot so do that too here.
> 
> Tested-by: [email protected]
> Fixes: https://bugzilla.kernel.org/show_bug.cgi?id=88001
> Cc: Henrique de Moraes Holschuh <[email protected]>
> Cc: Fenghua Yu <[email protected]>
> Cc: <[email protected]> # v3.9
> Signed-off-by: Borislav Petkov <[email protected]>
> Link: http://lkml.kernel.org/r/[email protected]
> Signed-off-by: Thomas Gleixner <[email protected]>
> ---
>  arch/x86/kernel/cpu/microcode/core.c | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/arch/x86/kernel/cpu/microcode/core.c 
> b/arch/x86/kernel/cpu/microcode/core.c
> index dd9d619..2ce9051 100644
> --- a/arch/x86/kernel/cpu/microcode/core.c
> +++ b/arch/x86/kernel/cpu/microcode/core.c
> @@ -465,6 +465,14 @@ static void mc_bp_resume(void)
>  
>       if (uci->valid && uci->mc)
>               microcode_ops->apply_microcode(cpu);
> +     else if (!uci->mc)
> +             /*
> +              * We might resume and not have applied late microcode but still
> +              * have a newer patch stashed from the early loader. We don't
> +              * have it in uci->mc so we have to load it the same way we're
> +              * applying patches early on the APs.
> +              */
> +             load_ucode_ap();
>  }
>  
>  static struct syscore_ops mc_syscore_ops = {
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
> 
> 
> ----- End forwarded message -----
> 
> -- 
> Regards/Gruss,
>     Boris.
> 
> Sent from a fat crate under my desk. Formatting is fine.
> --
> --
> To unsubscribe from this list: send the line "unsubscribe stable" in
> the body of a message to [email protected]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to