All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Borkmann <daniel@iogearbox.net>
To: lkp@lists.01.org
Subject: Re: [net/bpf] 3051bf36c2 BUG: unable to handle kernel paging request at 0000a7cf
Date: Fri, 10 Mar 2017 01:13:54 +0100	[thread overview]
Message-ID: <58C1EFC2.7090309@iogearbox.net> (raw)
In-Reply-To: <20170309234411.wec53iexfz6skmpl@pd.tnic>

[-- Attachment #1: Type: text/plain, Size: 2236 bytes --]

On 03/10/2017 12:44 AM, Borislav Petkov wrote:
> 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.

I think we're in the same time zone. ;) I could send something
official tomorrow cooking a changelog with analysis, but I don't
mind at all if you want to go ahead with that either. Feel free
to add my SoB or Tested-by to it.

>> 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.

Agree, looks only that hunk changed in behavior from c109bf95992b
("x86/cpufeature: Remove cpu_has_pge").

> Thanks.

WARNING: multiple messages have this Message-ID (diff)
From: Daniel Borkmann <daniel@iogearbox.net>
To: Borislav Petkov <bp@suse.de>,
	Linus Torvalds <torvalds@linux-foundation.org>
Cc: Thomas Gleixner <tglx@linutronix.de>,
	Kees Cook <keescook@chromium.org>,
	Laura Abbott <labbott@redhat.com>, Ingo Molnar <mingo@kernel.org>,
	Peter Anvin <hpa@zytor.com>,
	Fengguang Wu <fengguang.wu@intel.com>,
	Network Development <netdev@vger.kernel.org>,
	LKML <linux-kernel@vger.kernel.org>, LKP <lkp@01.org>,
	ast@fb.com, the arch/x86 maintainers <x86@kernel.org>,
	"David S. Miller" <davem@davemloft.net>
Subject: Re: [net/bpf] 3051bf36c2 BUG: unable to handle kernel paging request at 0000a7cf
Date: Fri, 10 Mar 2017 01:13:54 +0100	[thread overview]
Message-ID: <58C1EFC2.7090309@iogearbox.net> (raw)
In-Reply-To: <20170309234411.wec53iexfz6skmpl@pd.tnic>

On 03/10/2017 12:44 AM, Borislav Petkov wrote:
> 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.

I think we're in the same time zone. ;) I could send something
official tomorrow cooking a changelog with analysis, but I don't
mind at all if you want to go ahead with that either. Feel free
to add my SoB or Tested-by to it.

>> 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.

Agree, looks only that hunk changed in behavior from c109bf95992b
("x86/cpufeature: Remove cpu_has_pge").

> Thanks.

  reply	other threads:[~2017-03-10  0:13 UTC|newest]

Thread overview: 65+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-01 12:54 [net/bpf] 3051bf36c2 BUG: unable to handle kernel paging request at 0000a7cf Fengguang Wu
2017-03-01 12:54 ` Fengguang Wu
2017-03-02 20:23 ` Fengguang Wu
2017-03-02 20:23   ` Fengguang Wu
2017-03-02 20:40   ` Daniel Borkmann
2017-03-02 20:40     ` Daniel Borkmann
2017-03-08 19:25     ` Linus Torvalds
2017-03-08 19:25       ` Linus Torvalds
2017-03-08 22:27       ` Daniel Borkmann
2017-03-08 22:27         ` Daniel Borkmann
2017-03-08 22:36         ` Kees Cook
2017-03-08 22:36           ` Kees Cook
2017-03-08 22:51           ` Daniel Borkmann
2017-03-08 22:51             ` Daniel Borkmann
2017-03-08 23:55           ` Laura Abbott
2017-03-08 23:55             ` Laura Abbott
2017-03-09  5:36             ` Kees Cook
2017-03-09  5:36               ` Kees Cook
2017-03-09 13:04               ` Daniel Borkmann
2017-03-09 13:04                 ` Daniel Borkmann
2017-03-09 13:10                 ` Thomas Gleixner
2017-03-09 13:10                   ` Thomas Gleixner
2017-03-09 13:25                   ` Daniel Borkmann
2017-03-09 13:25                     ` Daniel Borkmann
2017-03-09 14:49                     ` Thomas Gleixner
2017-03-09 14:49                       ` Thomas Gleixner
2017-03-09 17:51                       ` Daniel Borkmann
2017-03-09 17:51                         ` Daniel Borkmann
2017-03-09 18:08                         ` David Miller
2017-03-09 18:08                           ` David Miller
2017-03-09 18:10                         ` Linus Torvalds
2017-03-09 18:10                           ` Linus Torvalds
2017-03-09 18:15                           ` Linus Torvalds
2017-03-09 18:15                             ` Linus Torvalds
2017-03-09 18:31                             ` Daniel Borkmann
2017-03-09 18:31                               ` Daniel Borkmann
2017-03-09 21:32                               ` Daniel Borkmann
2017-03-09 21:32                                 ` Daniel Borkmann
2017-03-09 21:32                                 ` Daniel Borkmann
2017-03-09 21:55                                 ` Borislav Petkov
2017-03-09 21:55                                   ` Borislav Petkov
2017-03-09 22:07                                   ` Borislav Petkov
2017-03-09 22:07                                     ` Borislav Petkov
2017-03-09 22:11                                     ` Daniel Borkmann
2017-03-09 22:11                                       ` Daniel Borkmann
2017-03-09 22:48                                       ` Borislav Petkov
2017-03-09 22:48                                         ` Borislav Petkov
2017-03-09 23:26                                         ` Linus Torvalds
2017-03-09 23:26                                           ` Linus Torvalds
2017-03-09 23:44                                           ` Borislav Petkov
2017-03-09 23:44                                             ` Borislav Petkov
2017-03-10  0:13                                             ` Daniel Borkmann [this message]
2017-03-10  0:13                                               ` Daniel Borkmann
2017-03-12 21:40                                           ` Borislav Petkov
2017-03-12 21:40                                             ` Borislav Petkov
2017-03-09 14:53                     ` Daniel Borkmann
2017-03-09 14:53                       ` Daniel Borkmann
2017-03-09 17:48                       ` Linus Torvalds
2017-03-09 17:48                         ` Linus Torvalds
2017-03-08 22:43         ` Linus Torvalds
2017-03-08 22:43           ` Linus Torvalds
2017-03-09  1:34           ` Fengguang Wu
2017-03-09  1:34             ` Fengguang Wu
2017-03-09 13:09       ` Thomas Gleixner
2017-03-09 13:09         ` Thomas Gleixner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=58C1EFC2.7090309@iogearbox.net \
    --to=daniel@iogearbox.net \
    --cc=lkp@lists.01.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.