Unverified Commit 4a26557b authored by openeuler-ci-bot's avatar openeuler-ci-bot Committed by Gitee
Browse files

!1902 tracing: Fix cpu buffers unavailable due to 'record_disabled' missed

parents 2a2e7e9c 355ff119
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -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);