Re: [Tech-board] [syzbot] WARNING in __change_page_attr_set_clr
From: Steven Rostedt
Date: Mon Sep 26 2022 - 10:57:24 EST
On Sun, 25 Sep 2022 14:55:46 -0700
Alexei Starovoitov <alexei.starovoitov@xxxxxxxxx> wrote:
> On Sun, Sep 25, 2022 at 9:44 AM Dave Hansen <dave.hansen@xxxxxxxxx> wrote:
> >
> > On 9/25/22 04:18, syzbot wrote:
> > > ------------[ cut here ]------------
> > > CPA refuse W^X violation: 8000000000000163 -> 0000000000000163 range: 0xffffffffa0401000 - 0xffffffffa0401fff PFN 7d8d5
> > > WARNING: CPU: 0 PID: 3607 at arch/x86/mm/pat/set_memory.c:600 verify_rwx arch/x86/mm/pat/set_memory.c:600 [inline]
> > > WARNING: CPU: 0 PID: 3607 at arch/x86/mm/pat/set_memory.c:600 __change_page_attr arch/x86/mm/pat/set_memory.c:1569 [inline]
> > > WARNING: CPU: 0 PID: 3607 at arch/x86/mm/pat/set_memory.c:600 __change_page_attr_set_clr+0x1f40/0x2020 arch/x86/mm/pat/set_memory.c:1691
> > > Modules linked in:
> >
> > Yay, one of these that isn't due to wonky 32-bit kernels!
> >
> > This one looks to be naughty intentionally:
> >
> > > void *bpf_jit_alloc_exec_page(void)
> > > {
> > ...
> > > /* Keep image as writeable. The alternative is to keep flipping ro/rw
> > > * every time new program is attached or detached.
> > > */
> > > set_memory_x((long)image, 1);
> > > return image;
> > > }
> >
> > For STRICT_KERNEL_RWX kernels, I think we would really rather that this
> > code *did* flip ro/rw every time a new BPF program is attached or detached.
>
> Steven Rostedt noticed that comment around the middle of August
> and told you and Peter about it.
> Then Peter added a WARN_ONCE in commit
> https://lore.kernel.org/all/YwySW3ROc21hN7g9@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/
> to explicitly trigger that known issue.
> Sure enough the fedora fails to boot on linux-next since then,
> because systemd is loading bpf programs that use bpf trampoline.
> The boot issue was was reported 3 days ago:
> https://lore.kernel.org/bpf/c84cc27c1a5031a003039748c3c099732a718aec.camel@xxxxxxxxxx/T/#u
> Now we're trying to urgently address it with:
> https://lore.kernel.org/bpf/20220923211837.3044723-1-song@xxxxxxxxxx/
>
> So instead of pinging us with your w^x concern you've decided
> to fail hard in -next to force the issue and
> now acting like this is something surprising to you?!
>
> This is Code of Conduct "worthy" behavior demonstrated
Here's the link to the Code of Conduct:
https://www.kernel.org/doc/html/latest/process/code-of-conduct.html
Which states:
Examples of behavior that contributes to creating a positive environment include:
- Using welcoming and inclusive language
- Being respectful of differing viewpoints and experiences
- Gracefully accepting constructive criticism
- Focusing on what is best for the community
- Showing empathy towards other community members
Examples of unacceptable behavior by participants include:
- The use of sexualized language or imagery and unwelcome sexual attention or advances
- Trolling, insulting/derogatory comments, and personal or political attacks
- Public or private harassment
- Publishing others’ private information, such as a physical or electronic address, without explicit permission
- Other conduct which could reasonably be considered inappropriate in a professional setting
I do not see how Dave's response is a violation of any of the above.
> by a newly elected member of the Technical Advisory Board.
> Please consider resigning.
Asking someone to resign is a personal attack, and that can be construed as
a violation of the Code of Conduct.
> A TAB member should be better than this.
>
Let's please keep this on a technical level, as there appears to be a fix
we all can agree on, and let's move forward on that.
Thanks,
-- Steve