linux/kernel/trace
Steven Rostedt 82310a3272 function-graph: enable the stack after initialization of other variables
The function graph tracer checks if the task_struct has ret_stack defined
to know if it is OK or not to use it. The initialization is done for
all tasks by one process, but the idle tasks use the same initialization
used by new tasks.

If an interrupt happens on an idle task that just had the ret_stack
created, but before the rest of the initialization took place, then
we can corrupt the return address of the functions.

This patch moves the setting of the task_struct's ret_stack to after
the other variables have been initialized.

[ Impact: prevent kernel panic on idle task when starting function graph ]

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
2009-06-02 14:41:50 -04:00
..
blktrace.c blktrace: pass the right pointer to kfree() 2009-04-09 05:52:40 +02:00
events.c ftrace: event profile hooks 2009-03-20 10:17:07 +01:00
ftrace.c function-graph: enable the stack after initialization of other variables 2009-06-02 14:41:50 -04:00
Kconfig tracing: fix document references 2009-04-10 13:08:50 +02:00
kmemtrace.c kmemtrace: small cleanups 2009-04-03 12:23:09 +02:00
Makefile tracing: add per-event filtering 2009-03-22 18:38:46 +01:00
ring_buffer.c ring-buffer: do not remove reader page from list on ring buffer free 2009-04-01 14:47:53 +02:00
trace_boot.c tracing: Introduce trace_buffer_{lock_reserve,unlock_commit} 2009-02-06 01:01:41 +01:00
trace_branch.c tracing: Fix branch tracer header 2009-04-14 02:30:36 +02:00
trace_clock.c tracing: fix four sparse warnings 2009-03-22 18:16:54 +01:00
trace_event_profile.c ftrace: event profile hooks 2009-03-20 10:17:07 +01:00
trace_event_types.h tracing: remove recording function depth from trace_printk 2009-03-19 15:58:47 -04:00
trace_events_filter.c tracing/filters: return proper error code when writing filter file 2009-04-12 11:59:29 +02:00
trace_events_stage_1.h tracing: update comments to match event code macros 2009-03-10 13:12:58 -04:00
trace_events_stage_2.h ftrace: Output REC->var instead of __entry->var for trace format 2009-04-10 15:48:53 +02:00
trace_events_stage_3.h tracing/events: don't discard an event after commit 2009-03-23 09:22:15 +01:00
trace_events.c tracing/filters: return proper error code when writing filter file 2009-04-12 11:59:29 +02:00
trace_export.c ftrace: Correct a text align for event format output 2009-04-07 14:02:42 +02:00
trace_functions_graph.c function-graph: enable the stack after initialization of other variables 2009-06-02 14:41:50 -04:00
trace_functions.c tracing/core: use appropriate waiting on trace_pipe 2009-02-18 01:40:20 +01:00
trace_hw_branches.c tracing/hw-branch-tracing: convert bts-tracer mutex to a spinlock 2009-02-25 09:16:01 +01:00
trace_irqsoff.c tracing: have latency tracers set the latency format 2009-03-04 22:15:30 -05:00
trace_mmiotrace.c tracing: remove recording function depth from trace_printk 2009-03-19 15:58:47 -04:00
trace_nop.c tracing/ftrace: make nop-tracer use polling wait for events on pipe 2009-03-23 09:22:15 +01:00
trace_output.c tracing: fix incorrect return type of ns2usecs() 2009-04-07 13:59:23 +02:00
trace_output.h trace: make argument 'mem' of trace_seq_putmem() const 2009-03-31 17:45:13 +02:00
trace_power.c tracing: Fix power tracer header 2009-04-13 23:39:57 +02:00
trace_printk.c tracing: remove recording function depth from trace_printk 2009-03-19 15:58:47 -04:00
trace_sched_switch.c ftrace: Add check of sched_stopped for probe_sched_wakeup 2009-04-07 14:01:11 +02:00
trace_sched_wakeup.c tracing: remove CALLER_ADDR2 from wakeup tracer 2009-04-07 13:58:54 +02:00
trace_selftest_dynamic.c ftrace: fix dynamic ftrace selftest 2008-05-23 21:13:23 +02:00
trace_selftest.c tracing: keep the tracing buffer after self-test failure 2009-03-22 15:17:21 +01:00
trace_stack.c tracing: left align location header in stack_trace 2009-03-13 00:00:58 -04:00
trace_stat.c trace_stat: keep original order 2009-03-25 18:32:34 +01:00
trace_stat.h tracing/ftrace: separate events tracing and stats tracing engine 2009-01-14 12:11:37 +01:00
trace_syscalls.c tracing/syscalls: use a dedicated file header 2009-04-09 05:43:32 +02:00
trace_sysprof.c tracing: make all file_operations const 2009-03-05 21:46:40 -05:00
trace_workqueue.c trace_workqueues: fix empty line's output 2009-03-25 18:32:35 +01:00
trace.c tracing: Append prompt in /debug/tracing/README file 2009-05-15 19:43:22 +02:00
trace.h Merge branch 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2009-04-07 14:10:10 -07:00