Messages in this thread | | | Date | Thu, 9 Feb 2017 11:27:03 +0100 | From | Peter Zijlstra <> | Subject | Re: [kernel-hardening] Re: [PATCH 4/4] refcount: Report failures through CHECK_DATA_CORRUPTION |
| |
On Wed, Feb 08, 2017 at 01:20:26PM -0800, Kees Cook wrote:
> Ooooh, that is intense. And the trampolines (EX_REG_HANDLERs) are all > just there to catch whatever register gcc decides to stuff the value > into? *cover face* Sure, okay. :)
Right, they shouldn't be big functions, but barring whole program LTO there's just no knowing which are unused.
> I wonder how many existing WARN callsites could be repurposed to use this?
At the very least all WARN/BUG instances with trivial @format argument that are inlined I think. For example, things like:
static inline some_function() { /* ... */ WARN(cond, "blah blah blah\n"); /* ... */ }
where the format has no arguments. Here we can out-of-line the printk() stuff, which, as is the purpose here, shrinks the size of the inline.
| |