diff options
-rw-r--r-- | kernel/trace/trace.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c index 6974b212e938..958c4d77a67b 100644 --- a/kernel/trace/trace.c +++ b/kernel/trace/trace.c | |||
@@ -1965,7 +1965,9 @@ tracing_read_pipe(struct file *filp, char __user *ubuf, | |||
1965 | static cpumask_t mask; | 1965 | static cpumask_t mask; |
1966 | static int start; | 1966 | static int start; |
1967 | unsigned long flags; | 1967 | unsigned long flags; |
1968 | #ifdef CONFIG_FTRACE | ||
1968 | int ftrace_save; | 1969 | int ftrace_save; |
1970 | #endif | ||
1969 | int read = 0; | 1971 | int read = 0; |
1970 | int cpu; | 1972 | int cpu; |
1971 | int len; | 1973 | int len; |
@@ -2044,8 +2046,10 @@ tracing_read_pipe(struct file *filp, char __user *ubuf, | |||
2044 | 2046 | ||
2045 | cpus_clear(mask); | 2047 | cpus_clear(mask); |
2046 | local_irq_save(flags); | 2048 | local_irq_save(flags); |
2049 | #ifdef CONFIG_FTRACE | ||
2047 | ftrace_save = ftrace_enabled; | 2050 | ftrace_save = ftrace_enabled; |
2048 | ftrace_enabled = 0; | 2051 | ftrace_enabled = 0; |
2052 | #endif | ||
2049 | smp_wmb(); | 2053 | smp_wmb(); |
2050 | for_each_possible_cpu(cpu) { | 2054 | for_each_possible_cpu(cpu) { |
2051 | data = iter->tr->data[cpu]; | 2055 | data = iter->tr->data[cpu]; |
@@ -2087,7 +2091,9 @@ tracing_read_pipe(struct file *filp, char __user *ubuf, | |||
2087 | data = iter->tr->data[cpu]; | 2091 | data = iter->tr->data[cpu]; |
2088 | atomic_dec(&data->disabled); | 2092 | atomic_dec(&data->disabled); |
2089 | } | 2093 | } |
2094 | #ifdef CONFIG_FTRACE | ||
2090 | ftrace_enabled = ftrace_save; | 2095 | ftrace_enabled = ftrace_save; |
2096 | #endif | ||
2091 | local_irq_restore(flags); | 2097 | local_irq_restore(flags); |
2092 | 2098 | ||
2093 | /* Now copy what we have to the user */ | 2099 | /* Now copy what we have to the user */ |