On Wed, Sep 28, 2016 at 12:34:14PM -0700, Andy Lutomirski wrote: > cr4_init_shadow() will panic on 486-like machines without CR4. Fix > it using __read_cr4_safe(). > > Cc: [email protected] > Reported-by: [email protected] > Fixes: 1e02ce4cccdc ("x86: Store a per-cpu shadow copy of CR4") > Signed-off-by: Andy Lutomirski <[email protected]> > --- > arch/x86/include/asm/tlbflush.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/x86/include/asm/tlbflush.h b/arch/x86/include/asm/tlbflush.h > index 6fa85944af83..dee8a70382ba 100644 > --- a/arch/x86/include/asm/tlbflush.h > +++ b/arch/x86/include/asm/tlbflush.h > @@ -81,7 +81,7 @@ DECLARE_PER_CPU_SHARED_ALIGNED(struct tlb_state, > cpu_tlbstate); > /* Initialize cr4 shadow for this CPU. */ > static inline void cr4_init_shadow(void) > { > - this_cpu_write(cpu_tlbstate.cr4, __read_cr4()); > + this_cpu_write(cpu_tlbstate.cr4, __read_cr4_safe()); > } > > /* Set in this cpu's CR4. */ > --
Reviewed-by: Borislav Petkov <[email protected]> -- Regards/Gruss, Boris. ECO tip #101: Trim your mails when you reply. --

