Re: [PATCH 02/23] x86, kaiser: do not set _PAGE_USER for init_mm page tables
From: Thomas Gleixner
Date: Thu Nov 02 2017 - 14:40:36 EST
On Thu, 2 Nov 2017, Linus Torvalds wrote:
> On Thu, Nov 2, 2017 at 11:19 AM, Andy Lutomirski <luto@xxxxxxxxxxxxxx> wrote:
> >
> > We'd have to force NONE, and Linus won't like it.
>
> Oh, I think it's fine for the kaiser case.
>
> I am not convinced anybody will actually use it, but if you do use it,
> I suspect "the legacy vsyscall page no longer works" is the least of
> your worries.
>
> That said, I think you can keep emulation, and just make it
> unreadable. That will keep legacy binaries still working, and will
> break a much smaller subset. So we have four cases:
>
> - native
> - read-only emulation
> - unreadable emulation
> - none
>
> and kaiser triggering that unreadable case sounds like the option
> least likely to cause trouble. vsyscalls still work, anybody who tries
> to trace them and look at the code will not.
Hmm. Not sure. IIRC you need to be able to read it to figure out where the
entry points are. They are at fixed offsets, but there is some voodoo out
there which reads the 'elf' to get to them.
Thanks,
tglx