[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20160713223408.8e52842ddda8818cec83d6a6@gmail.com>
Date: Wed, 13 Jul 2016 22:34:08 +0200
From: Emese Revfy <re.emese@...il.com>
To: Kees Cook <keescook@...omium.org>
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, 12 Jul 2016 16:05:45 -0400
Kees Cook <keescook@...omium.org> wrote:
> /*
> * 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
Thanks, I'll take it in the next patch set with some additions (the attribute
also handles __exit functions and the plugin does other things e.g., it can
identify candidate init/exit functions and move them automatically to init.text/exit.text).
--
Emese
Powered by blists - more mailing lists