Steven Rostedt (Red Hat)
f5eb558826
ring-buffer: Do not use schedule_work_on() for current CPU
...
The ring buffer updates when done while the ring buffer is active,
needs to be completed on the CPU that is used for the ring buffer
per_cpu buffer. To accomplish this, schedule_work_on() is used to
schedule work on the given CPU.
Now there's no reason to use schedule_work_on() if the process
doing the update happens to be on the CPU that it is processing.
It has already filled the requirement. Instead, just do the work
and continue.
This is needed for tracing_snapshot_alloc() where it may be called
really early in boot, where the work queues have not been set up yet.
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
2013-03-15 00:35:52 -04:00
..
blktrace.c
tracing: Consolidate max_tr into main trace_array structure
2013-03-15 00:35:40 -04:00
ftrace.c
tracing: Fix free of probe entry by calling call_rcu_sched()
2013-03-13 17:57:44 -04:00
Kconfig
tracing: Add config option to allow snapshot to swap per cpu
2013-03-15 00:35:47 -04:00
Makefile
power-traces.c
ring_buffer.c
ring-buffer: Do not use schedule_work_on() for current CPU
2013-03-15 00:35:52 -04:00
ring_buffer_benchmark.c
rpm-traces.c
trace.c
tracing: Add internal tracing_snapshot() functions
2013-03-15 00:35:51 -04:00
trace.h
tracing: Prevent deleting instances when they are being read
2013-03-15 00:35:51 -04:00
trace_branch.c
tracing: Replace the static global per_cpu arrays with allocated per_cpu
2013-03-15 00:34:43 -04:00
trace_clock.c
Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2013-02-19 17:49:41 -08:00
trace_entries.h
trace_event_perf.c
trace_events.c
tracing: Clear all trace buffers when unloaded module event was used
2013-03-15 00:34:57 -04:00
trace_events_filter.c
tracing: Separate out trace events from global variables
2013-03-15 00:34:40 -04:00
trace_events_filter_test.h
trace_export.c
tracing: Fix some section mismatch warnings
2013-03-15 00:34:54 -04:00
trace_functions.c
tracing: Consolidate max_tr into main trace_array structure
2013-03-15 00:35:40 -04:00
trace_functions_graph.c
tracing: Consolidate max_tr into main trace_array structure
2013-03-15 00:35:40 -04:00
trace_irqsoff.c
tracing: Consolidate max_tr into main trace_array structure
2013-03-15 00:35:40 -04:00
trace_kdb.c
tracing: Consolidate max_tr into main trace_array structure
2013-03-15 00:35:40 -04:00
trace_kprobe.c
tracing: Use irq_work for wake ups and remove *_nowake_*() functions
2012-11-02 10:21:52 -04:00
trace_mmiotrace.c
tracing: Consolidate max_tr into main trace_array structure
2013-03-15 00:35:40 -04:00
trace_nop.c
trace_output.c
tracing: Consolidate max_tr into main trace_array structure
2013-03-15 00:35:40 -04:00
trace_output.h
trace_printk.c
trace_probe.c
tracing: Replace strict_strto* with kstrto*
2012-10-31 16:45:23 -04:00
trace_probe.h
uprobes/tracing: Introduce is_trace_uprobe_enabled()
2013-02-08 18:24:30 +01:00
trace_sched_switch.c
tracing: Consolidate max_tr into main trace_array structure
2013-03-15 00:35:40 -04:00
trace_sched_wakeup.c
tracing: Consolidate max_tr into main trace_array structure
2013-03-15 00:35:40 -04:00
trace_selftest.c
tracing: Consolidate max_tr into main trace_array structure
2013-03-15 00:35:40 -04:00
trace_selftest_dynamic.c
trace_stack.c
tracing: Remove unneeded checks from the stack tracer
2012-11-19 15:07:13 -05:00
trace_stat.c
trace_stat.h
trace_syscalls.c
tracing: Consolidate max_tr into main trace_array structure
2013-03-15 00:35:40 -04:00
trace_uprobe.c
uprobes/perf: Avoid uprobe_apply() whenever possible
2013-02-08 18:28:08 +01:00