diff options
author | Ingo Molnar <mingo@elte.hu> | 2009-03-13 01:30:52 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-03-13 01:30:52 -0400 |
commit | d2e82546ae98eee353fae57e389f487586fe380d (patch) | |
tree | 887c0885760763d2e6710f418108ec322fb492fd | |
parent | 7afe16c2bbf065e30d692423ad2c7e77c4cfe9a5 (diff) | |
parent | 899039e8746bb9a09b6487ddb8ab2275ce9d0256 (diff) |
Merge branch 'tip/tracing/ftrace' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/ftrace
-rw-r--r-- | kernel/softirq.c | 5 | ||||
-rw-r--r-- | kernel/trace/trace.c | 26 | ||||
-rw-r--r-- | kernel/trace/trace.h | 5 | ||||
-rw-r--r-- | kernel/trace/trace_stack.c | 4 |
4 files changed, 14 insertions, 26 deletions
diff --git a/kernel/softirq.c b/kernel/softirq.c index a5e81231ca7a..65ff3e3961b4 100644 --- a/kernel/softirq.c +++ b/kernel/softirq.c | |||
@@ -55,9 +55,8 @@ static struct softirq_action softirq_vec[NR_SOFTIRQS] __cacheline_aligned_in_smp | |||
55 | static DEFINE_PER_CPU(struct task_struct *, ksoftirqd); | 55 | static DEFINE_PER_CPU(struct task_struct *, ksoftirqd); |
56 | 56 | ||
57 | char *softirq_to_name[NR_SOFTIRQS] = { | 57 | char *softirq_to_name[NR_SOFTIRQS] = { |
58 | "HI_SOFTIRQ", "TIMER_SOFTIRQ", "NET_TX_SOFTIRQ", "NET_RX_SOFTIRQ", | 58 | "HI", "TIMER", "NET_TX", "NET_RX", "BLOCK", |
59 | "BLOCK_SOFTIRQ", "TASKLET_SOFTIRQ", "SCHED_SOFTIRQ", "HRTIMER_SOFTIRQ", | 59 | "TASKLET", "SCHED", "HRTIMER", "RCU" |
60 | "RCU_SOFTIRQ" | ||
61 | }; | 60 | }; |
62 | 61 | ||
63 | /* | 62 | /* |
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c index dbb077d8a172..efe3202c0209 100644 --- a/kernel/trace/trace.c +++ b/kernel/trace/trace.c | |||
@@ -3543,6 +3543,11 @@ static void tracing_init_debugfs_percpu(long cpu) | |||
3543 | (void *) cpu, &tracing_fops); | 3543 | (void *) cpu, &tracing_fops); |
3544 | if (!entry) | 3544 | if (!entry) |
3545 | pr_warning("Could not create debugfs 'trace' entry\n"); | 3545 | pr_warning("Could not create debugfs 'trace' entry\n"); |
3546 | |||
3547 | entry = debugfs_create_file("trace_pipe_raw", 0444, d_cpu, | ||
3548 | (void *) cpu, &tracing_buffers_fops); | ||
3549 | if (!entry) | ||
3550 | pr_warning("Could not create debugfs 'trace_pipe_raw' entry\n"); | ||
3546 | } | 3551 | } |
3547 | 3552 | ||
3548 | #ifdef CONFIG_FTRACE_SELFTEST | 3553 | #ifdef CONFIG_FTRACE_SELFTEST |
@@ -3826,7 +3831,6 @@ static __init void create_trace_options_dir(void) | |||
3826 | static __init int tracer_init_debugfs(void) | 3831 | static __init int tracer_init_debugfs(void) |
3827 | { | 3832 | { |
3828 | struct dentry *d_tracer; | 3833 | struct dentry *d_tracer; |
3829 | struct dentry *buffers; | ||
3830 | struct dentry *entry; | 3834 | struct dentry *entry; |
3831 | int cpu; | 3835 | int cpu; |
3832 | 3836 | ||
@@ -3899,26 +3903,6 @@ static __init int tracer_init_debugfs(void) | |||
3899 | pr_warning("Could not create debugfs " | 3903 | pr_warning("Could not create debugfs " |
3900 | "'trace_marker' entry\n"); | 3904 | "'trace_marker' entry\n"); |
3901 | 3905 | ||
3902 | buffers = debugfs_create_dir("binary_buffers", d_tracer); | ||
3903 | |||
3904 | if (!buffers) | ||
3905 | pr_warning("Could not create buffers directory\n"); | ||
3906 | else { | ||
3907 | int cpu; | ||
3908 | char buf[64]; | ||
3909 | |||
3910 | for_each_tracing_cpu(cpu) { | ||
3911 | sprintf(buf, "%d", cpu); | ||
3912 | |||
3913 | entry = debugfs_create_file(buf, 0444, buffers, | ||
3914 | (void *)(long)cpu, | ||
3915 | &tracing_buffers_fops); | ||
3916 | if (!entry) | ||
3917 | pr_warning("Could not create debugfs buffers " | ||
3918 | "'%s' entry\n", buf); | ||
3919 | } | ||
3920 | } | ||
3921 | |||
3922 | #ifdef CONFIG_DYNAMIC_FTRACE | 3906 | #ifdef CONFIG_DYNAMIC_FTRACE |
3923 | entry = debugfs_create_file("dyn_ftrace_total_info", 0444, d_tracer, | 3907 | entry = debugfs_create_file("dyn_ftrace_total_info", 0444, d_tracer, |
3924 | &ftrace_update_tot_cnt, | 3908 | &ftrace_update_tot_cnt, |
diff --git a/kernel/trace/trace.h b/kernel/trace/trace.h index 35cfa7bbaf38..67595b8f0f15 100644 --- a/kernel/trace/trace.h +++ b/kernel/trace/trace.h | |||
@@ -776,6 +776,11 @@ extern struct ftrace_event_call __stop_ftrace_events[]; | |||
776 | extern const char *__start___trace_bprintk_fmt[]; | 776 | extern const char *__start___trace_bprintk_fmt[]; |
777 | extern const char *__stop___trace_bprintk_fmt[]; | 777 | extern const char *__stop___trace_bprintk_fmt[]; |
778 | 778 | ||
779 | /* | ||
780 | * The double __builtin_constant_p is because gcc will give us an error | ||
781 | * if we try to allocate the static variable to fmt if it is not a | ||
782 | * constant. Even with the outer if statement optimizing out. | ||
783 | */ | ||
779 | #define event_trace_printk(ip, fmt, args...) \ | 784 | #define event_trace_printk(ip, fmt, args...) \ |
780 | do { \ | 785 | do { \ |
781 | __trace_printk_check_format(fmt, ##args); \ | 786 | __trace_printk_check_format(fmt, ##args); \ |
diff --git a/kernel/trace/trace_stack.c b/kernel/trace/trace_stack.c index 91ccbf396c9a..c750f65f9661 100644 --- a/kernel/trace/trace_stack.c +++ b/kernel/trace/trace_stack.c | |||
@@ -262,9 +262,9 @@ static int t_show(struct seq_file *m, void *v) | |||
262 | int size; | 262 | int size; |
263 | 263 | ||
264 | if (v == SEQ_START_TOKEN) { | 264 | if (v == SEQ_START_TOKEN) { |
265 | seq_printf(m, " Depth Size Location" | 265 | seq_printf(m, " Depth Size Location" |
266 | " (%d entries)\n" | 266 | " (%d entries)\n" |
267 | " ----- ---- --------\n", | 267 | " ----- ---- --------\n", |
268 | max_stack_trace.nr_entries); | 268 | max_stack_trace.nr_entries); |
269 | 269 | ||
270 | if (!stack_tracer_enabled && !max_stack_size) | 270 | if (!stack_tracer_enabled && !max_stack_size) |