Merge "trace-container: Check /sys/kernel/tracing for tracefs" am: 1ac1d86b7d

Change-Id: I257121b260f13c1f0c307ec1fefba7787b1919cd
This commit is contained in:
Automerger Merge Worker 2020-02-10 16:56:19 +00:00
commit 0b9ed14c89

View file

@ -87,24 +87,28 @@ void atrace_set_tracing_enabled(bool enabled)
static void atrace_init_once()
{
atrace_marker_fd = open("/sys/kernel/debug/tracing/trace_marker", O_WRONLY | O_CLOEXEC);
atrace_marker_fd = open("/sys/kernel/tracing/trace_marker", O_WRONLY | O_CLOEXEC);
if (atrace_marker_fd < 0) {
// We're in container, ftrace may be disabled. In such case, we use the
// socket to write trace event.
// try debugfs
atrace_marker_fd = open("/sys/kernel/debug/tracing/trace_marker", O_WRONLY | O_CLOEXEC);
if (atrace_marker_fd < 0) {
// We're in container, ftrace may be disabled. In such case, we use the
// socket to write trace event.
// Protect the initialization of container socket from
// atrace_set_tracing_enabled.
pthread_mutex_lock(&atrace_enabling_mutex);
atrace_use_container_sock = true;
bool success = false;
if (atomic_load_explicit(&atrace_is_enabled, memory_order_acquire)) {
success = atrace_init_container_sock();
}
pthread_mutex_unlock(&atrace_enabling_mutex);
// Protect the initialization of container socket from
// atrace_set_tracing_enabled.
pthread_mutex_lock(&atrace_enabling_mutex);
atrace_use_container_sock = true;
bool success = false;
if (atomic_load_explicit(&atrace_is_enabled, memory_order_acquire)) {
success = atrace_init_container_sock();
}
pthread_mutex_unlock(&atrace_enabling_mutex);
if (!success) {
atrace_enabled_tags = 0;
goto done;
if (!success) {
atrace_enabled_tags = 0;
goto done;
}
}
}
atrace_enabled_tags = atrace_get_property();