On Wed, Mar 11, 2020 at 08:44:46PM +0100, Borislav Petkov wrote: > Ozenn Mon, Feb 24, 2020 at 09:13:02PM -0800, Kees Cook wrote: > > Add a table to document the current behavior of READ_IMPLIES_EXEC in > > preparation for changing the behavior. > > > > Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx> > > Reviewed-by: Jason Gunthorpe <jgg@xxxxxxxxxxxx> > > --- > > arch/x86/include/asm/elf.h | 19 +++++++++++++++++++ > > 1 file changed, 19 insertions(+) > > > > diff --git a/arch/x86/include/asm/elf.h b/arch/x86/include/asm/elf.h > > index 69c0f892e310..733f69c2b053 100644 > > --- a/arch/x86/include/asm/elf.h > > +++ b/arch/x86/include/asm/elf.h > > @@ -281,6 +281,25 @@ extern u32 elf_hwcap2; > > /* > > * An executable for which elf_read_implies_exec() returns TRUE will > > * have the READ_IMPLIES_EXEC personality flag set automatically. > > + * > > + * The decision process for determining the results are: > > + * > > + * CPU: | lacks NX* | has NX, ia32 | has NX, x86_64 | > > + * ELF: | | | | > > + * -------------------------------|------------------|----------------| > > + * missing GNU_STACK | exec-all | exec-all | exec-all | > > + * GNU_STACK == RWX | exec-all | exec-all | exec-all | > > + * GNU_STACK == RW | exec-none | exec-none | exec-none | > > In all those tables, you wanna do: > > s/GNU_STACK/PT_GNU_STACK/g > > so that it is clear what this define is. Fair enough. :) I think I was trying to save 3 characters from earlier tables that were wider. I'll send a v5. Thanks! -Kees -- Kees Cook