diff options
author | Ingo Molnar <mingo@elte.hu> | 2009-03-09 05:09:06 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-03-09 05:11:08 -0400 |
commit | 8a20d84d09ab5d121f989cd99e4fc5f4b49f98ba (patch) | |
tree | ac0df056602e4be2fd70a89ac033b911667a2fae /include/asm-generic | |
parent | 9de36825b321fe9fe9cf73260554251af579f4ca (diff) |
tracing: trace_printk() fix, move format array to data section
Impact: fix kernel crash when using trace_printk()
trace_printk_fmt section is defined into the readonly section.
But we do:
trace_printk_fmt = fmt;
to fill in that table of format strings - which is not read-only.
Under CONFIG_DEBUG_RODATA=y this crashes ...
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Peter Zijlstra <peterz@infradead.org>
LKML-Reference: <1236356510-8381-5-git-send-email-fweisbec@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include/asm-generic')
-rw-r--r-- | include/asm-generic/vmlinux.lds.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h index 48ade3168b13..d656b4624024 100644 --- a/include/asm-generic/vmlinux.lds.h +++ b/include/asm-generic/vmlinux.lds.h | |||
@@ -98,6 +98,7 @@ | |||
98 | VMLINUX_SYMBOL(__stop___tracepoints) = .; \ | 98 | VMLINUX_SYMBOL(__stop___tracepoints) = .; \ |
99 | LIKELY_PROFILE() \ | 99 | LIKELY_PROFILE() \ |
100 | BRANCH_PROFILE() \ | 100 | BRANCH_PROFILE() \ |
101 | TRACE_PRINTKS() \ | ||
101 | FTRACE_EVENTS() | 102 | FTRACE_EVENTS() |
102 | 103 | ||
103 | #define RO_DATA(align) \ | 104 | #define RO_DATA(align) \ |
@@ -108,7 +109,6 @@ | |||
108 | *(__vermagic) /* Kernel version magic */ \ | 109 | *(__vermagic) /* Kernel version magic */ \ |
109 | *(__markers_strings) /* Markers: strings */ \ | 110 | *(__markers_strings) /* Markers: strings */ \ |
110 | *(__tracepoints_strings)/* Tracepoints: strings */ \ | 111 | *(__tracepoints_strings)/* Tracepoints: strings */ \ |
111 | TRACE_PRINTKS() \ | ||
112 | } \ | 112 | } \ |
113 | \ | 113 | \ |
114 | .rodata1 : AT(ADDR(.rodata1) - LOAD_OFFSET) { \ | 114 | .rodata1 : AT(ADDR(.rodata1) - LOAD_OFFSET) { \ |