Unverified Commit 2269ba53 authored by openeuler-ci-bot's avatar openeuler-ci-bot Committed by Gitee
Browse files

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

parents 1253fad6 c5f5eb28
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -4784,11 +4784,17 @@ int tracing_set_cpumask(struct trace_array *tr,
				!cpumask_test_cpu(cpu, tracing_cpumask_new)) {
			atomic_inc(&per_cpu_ptr(tr->array_buffer.data, cpu)->disabled);
			ring_buffer_record_disable_cpu(tr->array_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->array_buffer.data, cpu)->disabled);
			ring_buffer_record_enable_cpu(tr->array_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);