History

ftrace: add ftrace_kill_atomic

It has been suggested that I add a way to disable the function tracer on an oops. This code adds a ftrace_kill_atomic. It is not meant to be used in normal situations. It will disable the ftrace tracer, but will not perform the nice shutdown that requires scheduling.

Steven Rostedt committed 18 years ago

Commit a2bb6a31 parent 26bc83f2 files · +16 −0Browse files

Showing the changes to kernel/trace (1 of 2 files). Show all

Unified · Split

kernel/trace/ftrace.c+15−0
@@ -1601,6 +1601,21 @@ core_initcall(ftrace_dynamic_init); · 1600 unmodified lines
1601# define ftrace_force_shutdown() do { } while (0)1601# define ftrace_force_shutdown() do { } while (0)
1602#endif /* CONFIG_DYNAMIC_FTRACE */1602#endif /* CONFIG_DYNAMIC_FTRACE */
1603 1603
1604/**
1605 * ftrace_kill_atomic - kill ftrace from critical sections
1606 *
1607 * This function should be used by panic code. It stops ftrace
1608 * but in a not so nice way. If you need to simply kill ftrace
1609 * from a non-atomic section, use ftrace_kill.
1610 */
1611void ftrace_kill_atomic(void)
1612{
1613 ftrace_disabled = 1;
1614 ftrace_enabled = 0;
1615 ftraced_suspend = -1;
1616 clear_ftrace_function();
1617}
1618
1604/**1619/**
1605 * ftrace_kill - totally shutdown ftrace1620 * ftrace_kill - totally shutdown ftrace
1606 *1621 *