Prev: [PATCH 07/10] ftrace: pass KBUILD_CFLAGS to record_mcount.pl
Next: kprobes: Hide CONFIG_OPTPROBES and set if arch support optimized kprobes
From: Ingo Molnar on 13 Mar 2010 02:30 * Steven Rostedt <rostedt(a)goodmis.org> wrote: > Ingo, > > Li Zefan and Lai Jiangshan told me they were finding various bugs > with running a stress test. I asked for this test, and Li sent it > to me. Running the test I was also able to trigger the same bugs that > they were seeing. Unfortunately, these bugs were very hard to figure > out and it took me most of the week to fix them. > > These bugs would most likely not happen in normal use, since they > all require multiple users writing to the control files of ftrace. > This stress test does just that, it creates several processes that > each write to a different part of a ftrace control system. One resizes > the ring buffer, the other enables and disables various options, > another changes the ftrace plugins, another enables and disables > various events, another enables and disables the tracer, etc. > > Normal use generally has a single user that would only do one of these > actions at a time. But that is no excuse for not fixing the issues > that this test uncovered, so I took this very seriously. > > Even the fix "tracing: Disable buffer switching when starting or > stopping trace" may look like it could happen if wakeup tracer is running, > but since opening the trace file would cause the wakeup tracer to stop, > it actually required another task to change the current tracer to > the wakeup tracer while the trace file was being read. > > In any event, I've been running Li's ftrace_stress_test for a few > hours now, and it seems pretty stable with these patches. I'll continue > to run it to see if it finds anything else. > > All of these patches I consider urgent and have also Cc'd stable on them. > > Please pull the latest tip/tracing/urgent tree, which can be found at: > > git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace.git > tip/tracing/urgent > > > Lai Jiangshan (1): > ring-buffer: Move disabled check into preempt disable section > > Steven Rostedt (4): > function-graph: Init curr_ret_stack with ret_stack > tracing: Use same local variable when resetting the ring buffer > tracing: Disable buffer switching when starting or stopping trace > tracing: Do not record user stack trace from NMI context > > ---- > kernel/trace/ftrace.c | 2 +- > kernel/trace/ring_buffer.c | 12 ++++++------ > kernel/trace/trace.c | 24 ++++++++++++++++++++---- > 3 files changed, 27 insertions(+), 11 deletions(-) Pulled, thanks a lot Steve! Ingo -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ |