Messages in this thread | | | Date | Mon, 09 Mar 2015 12:03:53 -0400 | From | Steven Rostedt <> | Subject | [PATCH 0/5] [GIT PULL] seq-buf/ftrace: Various fixes |
| |
Linus,
This includes fixes for seq_buf_bprintf() truncation issue. It also contains fixes to ftrace when /proc/sys/kernel/ftrace_enabled and function tracing are started. Doing the following causes some issues:
# echo 0 > /proc/sys/kernel/ftrace_enabled # echo function_graph > /sys/kernel/debug/tracing/current_tracer # echo 1 > /proc/sys/kernel/ftrace_enabled # echo nop > /sys/kernel/debug/tracing/current_tracer # echo function_graph > /sys/kernel/debug/tracing/current_tracer
As well as with function tracing too. Pratyush Anand first reported this issue to me and supplied a patch. When I tested this on my x86 test box, it caused thousands of backtraces and warnings to appear in dmesg, which also caused a denial of service (a warning for every function that was listed). I applied Pratyush's patch but it did not fix the issue for me. I looked into it and found a slight problem with trampoline accounting. I fixed it and sent Pratyush a patch, but he said that it did not fix the issue for him.
I later learned tha Pratyush was using an ARM64 server, and when I tested on my ARM board, I was able to reproduce the same issue as Pratyush. After applying his patch, it fixed the problem. The above test uncovered two different bugs, one in x86 and one in ARM and ARM64. As this looked like it would affect PowerPC, I tested it on my PPC64 box. It too broke, but neither the patch that fixed ARM or x86 fixed this box (the changes were all in generic code!). The above test, uncovered two more bugs that affected PowerPC. Again, the changes were only done to generic code. It's the way the arch code expected things to be done that was different between the archs. Some where more sensitive than others.
The rest of this series fixes the PPC bugs as well.
This is on top of the last pull request I sent out. But doesn't seem to have been pulled.
Please pull the latest trace-fixes-v4.0-rc2-2 tree, which can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace.git trace-fixes-v4.0-rc2-2
Tag SHA1: 5b136f3e4bf380f18402f3354cd13f9f0ffbeb02 Head SHA1: 524a38682573b2e15ab6317ccfe50280441514be
Pratyush Anand (1): ftrace: Fix en(dis)able graph caller when en(dis)abling record via sysctl
Steven Rostedt (Red Hat) (4): seq_buf: Fix seq_buf_vprintf() truncation seq_buf: Fix seq_buf_bprintf() truncation ftrace: Clear REGS_EN and TRAMP_EN flags on disabling record via sysctl ftrace: Fix ftrace enable ordering of sysctl ftrace_enabled
---- kernel/trace/ftrace.c | 40 ++++++++++++++++++++++++++++++---------- lib/seq_buf.c | 4 ++-- 2 files changed, 32 insertions(+), 12 deletions(-)
| |