Michael Ellerman c012268b37 lkdtm: Mark lkdtm_rodata_do_nothing() notrace
lkdtm_rodata_do_nothing() is an empty function which is generated in
order to test the non-executability of rodata.

Currently if function tracing is enabled then an mcount callsite will be
generated for lkdtm_rodata_do_nothing(), and it will appear in the list
of available functions for function tracing (available_filter_functions).

Given it's purpose purely as a test function, it seems preferable for
lkdtm_rodata_do_nothing() to be marked notrace, so it doesn't appear as
traceable.

This also avoids triggering a linker bug on powerpc:

  https://sourceware.org/bugzilla/show_bug.cgi?id=20428

When the linker sees code that needs to generate a call stub, eg. a
branch to mcount(), it assumes the section is executable and
dereferences a NULL pointer leading to a linker segfault. Marking
lkdtm_rodata_do_nothing() notrace avoids triggering the bug because the
function contains no other function calls.

Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-08-31 13:12:38 +02:00
..
2016-07-27 14:03:52 -07:00
2016-08-01 18:36:01 -04:00
2016-08-05 09:48:22 -04:00
2016-07-30 21:01:36 -07:00
2016-07-28 15:45:17 -07:00
2016-08-01 16:49:13 -04:00
2016-07-30 21:01:36 -07:00
2016-07-30 21:01:36 -07:00
2016-07-30 21:01:36 -07:00
2016-08-07 14:41:02 -06:00
2016-08-04 09:59:37 -04:00
2016-08-02 17:05:11 -04:00
2016-08-01 18:36:01 -04:00
2016-07-31 21:36:58 -04:00
2016-08-06 09:20:13 -04:00
2016-07-20 23:39:36 -07:00
2016-07-31 21:36:58 -04:00
2016-08-01 18:36:01 -04:00
2016-08-06 00:01:33 -04:00
2016-08-06 00:01:33 -04:00
2016-08-05 09:48:22 -04:00
2016-08-09 13:42:41 +03:00
2016-08-09 10:17:42 -07:00
2016-08-01 18:36:01 -04:00
2016-08-01 18:37:45 -04:00
2016-08-05 23:07:43 -04:00
2016-08-02 19:35:40 -04:00
2016-08-06 09:20:13 -04:00