Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754039AbdCIXog (ORCPT ); Thu, 9 Mar 2017 18:44:36 -0500 Received: from mx2.suse.de ([195.135.220.15]:59330 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752943AbdCIXoe (ORCPT ); Thu, 9 Mar 2017 18:44:34 -0500 Date: Fri, 10 Mar 2017 00:44:11 +0100 From: Borislav Petkov To: Linus Torvalds Cc: Daniel Borkmann , Thomas Gleixner , Kees Cook , Laura Abbott , Ingo Molnar , Peter Anvin , Fengguang Wu , Network Development , LKML , LKP , ast@fb.com, the arch/x86 maintainers , "David S. Miller" Subject: Re: [net/bpf] 3051bf36c2 BUG: unable to handle kernel paging request at 0000a7cf Message-ID: <20170309234411.wec53iexfz6skmpl@pd.tnic> References: <58C19607.6000605@iogearbox.net> <58C19F67.3040509@iogearbox.net> <58C1C9DC.7070509@iogearbox.net> <20170309215547.jmdzznlkzaxwu2pf@pd.tnic> <20170309220732.ufqoqlawktsi2gao@pd.tnic> <58C1D305.8090802@iogearbox.net> <20170309224820.5invcnhvr2tl3ges@pd.tnic> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: NeoMutt/20170113 (1.7.2) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1852 Lines: 55 On Thu, Mar 09, 2017 at 03:26:02PM -0800, Linus Torvalds wrote: > So should all of commit ("c109bf95992b x86/cpufeature: Remove > cpu_has_pge") just be reverted (and then marked for stable)? > > Or do we have some alternate plan? I think we want to do this: diff --git a/arch/x86/include/asm/tlbflush.h b/arch/x86/include/asm/tlbflush.h index 6fa85944af83..fc5abff9b7fd 100644 --- a/arch/x86/include/asm/tlbflush.h +++ b/arch/x86/include/asm/tlbflush.h @@ -188,7 +188,7 @@ static inline void __native_flush_tlb_single(unsigned long addr) static inline void __flush_tlb_all(void) { - if (static_cpu_has(X86_FEATURE_PGE)) + if (boot_cpu_has(X86_FEATURE_PGE)) __flush_tlb_global(); else __flush_tlb(); --- but it is late here so I'd prefer to do a real patch tomorrow when I'm not almost sleeping on the keyboard. Unless Daniel wants to write one and test it now. > This has apparently been going on for a long while (it got merged into > 4.7), but presumably it only actually _matters_ if lguest is enabled > and used and we've triggered that lguest_arch_host_init() code. That's what I gather too, yes. What sane code would go and clear X86_FEATURE_PGE?!? :-))) > Maybe it's the lguest games with PGE that need to be removed? Well, as far as I can read the comment in lguest_arch_host_init(), it does some monkey business with switching to the guest kernel where global pages are not present anymore... or something. So it sounds to me like lguest would break if we removed the games but I have no idea what it does with that. And besides, the small hunk above restores the situation before ("c109bf95992b x86/cpufeature: Remove cpu_has_pge") so applying it would actually be a no-brainer. Thanks. -- Regards/Gruss, Boris. SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton, HRB 21284 (AG Nürnberg) --