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

Change-Id: I99cda8b9d2a8faa402be4960cbfba60646a65e0d
This commit is contained in:
Automerger Merge Worker 2020-02-10 17:10:27 +00:00
commit cb22a67a84

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();