From: Konrad Rzeszutek Wilk Date: Mon, 12 Mar 2018 15:29:19 +0000 (-0400) Subject: x86/spectre_v2: Fix cpu offlining with IPBP. X-Git-Tag: v4.1.12-124.31.3~914 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=b5b92b810c765ccaa300c5fb3b6ab6ce4cf0464d;p=users%2Fjedix%2Flinux-maple.git x86/spectre_v2: Fix cpu offlining with IPBP. We didn't check if tsk->mm is available when an CPU goes down - and of course - that is exactly when there is no task. As such we would crash. OraBug: 27678629 Reveiwed-by: Krish Sadhukhan Reviewed-by: Jack Vogel Signed-off-by: Konrad Rzeszutek Wilk --- diff --git a/arch/x86/mm/tlb.c b/arch/x86/mm/tlb.c index 4d6ed0734975..620d4af6a784 100644 --- a/arch/x86/mm/tlb.c +++ b/arch/x86/mm/tlb.c @@ -107,7 +107,7 @@ void switch_mm_irqs_off(struct mm_struct *prev, struct mm_struct *next, if (likely(prev != next)) { /* Null tsk means switching to kernel, so that's safe */ - if (ibpb_inuse && tsk && + if (ibpb_inuse && tsk && tsk->mm && get_dumpable(tsk->mm) != SUID_DUMP_USER) native_wrmsrl(MSR_IA32_PRED_CMD, FEATURE_SET_IBPB);