diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c index 1e1781ace916f11450d09ca4d5823d1b46dbe67f..fab69081d6d837f3e1c288c58d00ec2ba4f489a5 100644 --- a/kernel/trace/trace.c +++ b/kernel/trace/trace.c @@ -4249,11 +4249,17 @@ tracing_cpumask_write(struct file *filp, const char __user *ubuf, !cpumask_test_cpu(cpu, tracing_cpumask_new)) { atomic_inc(&per_cpu_ptr(tr->trace_buffer.data, cpu)->disabled); ring_buffer_record_disable_cpu(tr->trace_buffer.buffer, cpu); +#ifdef CONFIG_TRACER_MAX_TRACE + ring_buffer_record_disable_cpu(tr->max_buffer.buffer, cpu); +#endif } if (!cpumask_test_cpu(cpu, tr->tracing_cpumask) && cpumask_test_cpu(cpu, tracing_cpumask_new)) { atomic_dec(&per_cpu_ptr(tr->trace_buffer.data, cpu)->disabled); ring_buffer_record_enable_cpu(tr->trace_buffer.buffer, cpu); +#ifdef CONFIG_TRACER_MAX_TRACE + ring_buffer_record_enable_cpu(tr->max_buffer.buffer, cpu); +#endif } } arch_spin_unlock(&tr->max_lock);