Daniel Thompson
8520dedbbf
tracing: kdb: Fix kernel livelock with empty buffers
...
Currently kdb's ftdump command will livelock by constantly printk'ing
the empty string at KERN_EMERG level if it run when the ftrace system is
not in use. This occurs because trace_empty() never returns false when
the ring buffers are left at the start of a non-consuming read [launched
by ring_buffer_read_start()].
This patch changes the loop exit condition to use the result of
trace_find_next_entry_inc(). Effectively this switches the non-consuming
kdb dumper to follow the approach of the non-consuming userspace
interface [s_next()] rather than the consuming ftrace_dump().
Link: http://lkml.kernel.org/r/1415277716-19419-3-git-send-email-daniel.thompson@linaro.org
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: John Stultz <john.stultz@linaro.org>
Cc: Sumit Semwal <sumit.semwal@linaro.org>
Cc: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Daniel Thompson <daniel.thompson@linaro.org>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
2014-11-13 21:27:25 -05:00
..
blktrace.c
ftrace.c
ftrace: Have the control_ops get a trampoline
2014-11-13 19:40:56 -05:00
Kconfig
tracing: Remove function_trace_stop and HAVE_FUNCTION_TRACE_MCOUNT_TEST
2014-07-18 13:58:12 -04:00
Makefile
tracing: Move the trace_seq_* functions into its own trace_seq.c file
2014-07-01 07:13:35 -04:00
power-traces.c
ring_buffer.c
ring-buffer: Fix infinite spin in reading buffer
2014-10-02 16:51:18 -04:00
ring_buffer_benchmark.c
sched, cleanup, treewide: Remove set_current_state(TASK_RUNNING) after schedule()
2014-09-19 12:35:17 +02:00
rpm-traces.c
trace.c
tracing: Fix traceoff_on_warning handling on boot command line
2014-11-13 21:03:41 -05:00
trace.h
tracing: Move tracing_sched_{switch,wakeup}() into wakeup tracer
2014-11-11 12:43:15 -05:00
trace_benchmark.c
tracing: Only calculate stats of tracepoint benchmarks for 2^32 times
2014-06-06 00:41:38 -04:00
trace_benchmark.h
tracing: Add tracepoint benchmark tracepoint
2014-05-29 22:49:54 -04:00
trace_branch.c
trace_clock.c
tracing: Fix wraparound problems in "uptime" trace clock
2014-07-21 09:56:12 -04:00
trace_entries.h
trace_event_perf.c
perf: Check permission only for parent tracepoint event
2014-07-28 10:01:38 +02:00
trace_events.c
tracing: Robustify wait loop
2014-10-08 19:51:01 -04:00
trace_events_filter.c
tracing: Kill "filter_string" arg of replace_preds()
2014-07-16 14:58:53 -04:00
trace_events_filter_test.h
trace_events_trigger.c
tracing: Use rcu_dereference_sched() for trace event triggers
2014-05-02 23:12:42 -04:00
trace_export.c
trace_functions.c
tracing: Remove mock up poll wait function
2014-04-30 08:40:05 -04:00
trace_functions_graph.c
tracing: Convert local function_graph functions to static
2014-07-18 21:16:06 -04:00
trace_irqsoff.c
tracing: Allow irq/preempt tracers to be used by instances
2014-04-21 13:59:29 -04:00
trace_kdb.c
tracing: kdb: Fix kernel livelock with empty buffers
2014-11-13 21:27:25 -05:00
trace_kprobe.c
Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2014-06-12 19:18:49 -07:00
trace_mmiotrace.c
trace_nop.c
tracing: Remove mock up poll wait function
2014-04-30 08:40:05 -04:00
trace_output.c
tracing: Add entry->next_cpu to trace_ctxwake_bin()
2014-11-11 12:43:34 -05:00
trace_output.h
tracing: Make trace_seq_putmem_hex() more robust
2014-07-01 07:13:37 -04:00
trace_printk.c
trace_probe.c
kprobes, ftrace: Use NOKPROBE_SYMBOL macro in ftrace
2014-04-24 10:26:39 +02:00
trace_probe.h
kprobes, ftrace: Use NOKPROBE_SYMBOL macro in ftrace
2014-04-24 10:26:39 +02:00
trace_sched_switch.c
tracing: Move tracing_sched_{switch,wakeup}() into wakeup tracer
2014-11-11 12:43:15 -05:00
trace_sched_wakeup.c
tracing: Move tracing_sched_{switch,wakeup}() into wakeup tracer
2014-11-11 12:43:15 -05:00
trace_selftest.c
Seems that Peter Zijlstra added a new check that is making old
2014-10-12 07:28:55 -04:00
trace_selftest_dynamic.c
trace_seq.c
tracing: Remove trace_seq_reserve()
2014-07-01 07:13:37 -04:00
trace_stack.c
sched: Add helper for task stack page overrun checking
2014-09-19 12:35:23 +02:00
trace_stat.c
trace_stat.h
trace_syscalls.c
kernel: trace_syscalls: Replace rcu_assign_pointer() with RCU_INIT_POINTER()
2014-09-10 10:48:47 -04:00
trace_uprobe.c
tracing/uprobes: Kill the dead TRACE_EVENT_FL_USE_CALL_FILTER logic
2014-07-16 14:25:19 -04:00