|
Message-ID: <CAGXu5j+W2hZGkudskkmEn+beEN04qmg16-k7Rna-QRT3vyEW2g@mail.gmail.com> Date: Tue, 12 Jul 2016 16:05:45 -0400 From: Kees Cook <keescook@...omium.org> To: Emese Revfy <re.emese@...il.com> Cc: "kernel-hardening@...ts.openwall.com" <kernel-hardening@...ts.openwall.com>, PaX Team <pageexec@...email.hu>, Brad Spengler <spender@...ecurity.net>, Michal Marek <mmarek@...e.com>, LKML <linux-kernel@...r.kernel.org>, Masahiro Yamada <yamada.masahiro@...ionext.com>, linux-kbuild <linux-kbuild@...r.kernel.org>, minipli@...linux.so, Russell King <linux@...linux.org.uk>, Catalin Marinas <catalin.marinas@....com>, Rasmus Villemoes <linux@...musvillemoes.dk>, David Brown <david.brown@...aro.org>, "benh@...nel.crashing.org" <benh@...nel.crashing.org>, Thomas Gleixner <tglx@...utronix.de>, Andrew Morton <akpm@...ux-foundation.org>, Jeff Layton <jlayton@...chiereds.net>, Arnd Bergmann <arnd@...db.de>, Sam Ravnborg <sam@...nborg.org>, Karsten Keil <isdn@...ux-pingi.de> Subject: Re: [PATCH v2 1/3] Add the initify gcc plugin On Tue, Jul 12, 2016 at 4:07 PM, Emese Revfy <re.emese@...il.com> wrote: > On Tue, 12 Jul 2016 15:45:56 -0400 > Kees Cook <keescook@...omium.org> wrote: > >> On Mon, Jul 4, 2016 at 7:40 PM, Emese Revfy <re.emese@...il.com> wrote: >> Thanks for sending this! I'll get it added to my tree for some 0day >> build testing, and then get it into my -next tree. > > I'll send a new patch set soon. I'm working on some fixes and > I would like to implement the handling of return uses to increase the coverage > (which decreases because of the bug fixes :) ). > So please hold off with testing until the next patch. Okay, cool. I'll just do some simple tests with what I have so I can feel like I understand its intended use, etc. :) One change I made was to add this comment in compiler-gcc.h for people that become curious about __nocapture and go looking for its definition (please feel free to adjust for accuracy, etc): /* * The initify gcc-plugin attempts to identify const arguments that are only * used during init (see __init), so they can be moved to the .init.rodata * section. If an argument is passed to a non-init function, it must * normally be assumed that such an argument has been captured by that * function and may be used in the future when .init has been unmapped from * memory. In order to identify functions that are confirmed to not capture * their arguments, the __nocapture() attribute is used so that initify can * better identify candidate variables. */ #ifdef INITIFY_PLUGIN # define __nocapture(...) __attribute__((nocapture(__VA_ARGS__))) #endif -Kees -- Kees Cook Chrome OS & Brillo Security
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.