Move trace.h to stdatomic.
Bug: 20262261 Change-Id: Idaf984786804eb76c285f38b11abbbc0d3706509
This commit is contained in:
parent
89e2f94218
commit
a8ac32c781
|
@ -18,6 +18,7 @@
|
|||
#define _LIBS_CUTILS_TRACE_H
|
||||
|
||||
#include <inttypes.h>
|
||||
#include <stdatomic.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdint.h>
|
||||
#include <stdio.h>
|
||||
|
@ -25,7 +26,6 @@
|
|||
#include <sys/types.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#include <cutils/atomic.h>
|
||||
#include <cutils/compiler.h>
|
||||
|
||||
__BEGIN_DECLS
|
||||
|
@ -113,7 +113,7 @@ void atrace_set_tracing_enabled(bool enabled);
|
|||
* Nonzero indicates setup has completed.
|
||||
* Note: This does NOT indicate whether or not setup was successful.
|
||||
*/
|
||||
extern volatile int32_t atrace_is_ready;
|
||||
extern atomic_bool atrace_is_ready;
|
||||
|
||||
/**
|
||||
* Set of ATRACE_TAG flags to trace for, initialized to ATRACE_TAG_NOT_READY.
|
||||
|
@ -136,7 +136,7 @@ extern int atrace_marker_fd;
|
|||
#define ATRACE_INIT() atrace_init()
|
||||
static inline void atrace_init()
|
||||
{
|
||||
if (CC_UNLIKELY(!android_atomic_acquire_load(&atrace_is_ready))) {
|
||||
if (CC_UNLIKELY(!atomic_load_explicit(&atrace_is_ready, memory_order_acquire))) {
|
||||
atrace_setup();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -18,11 +18,11 @@
|
|||
#include <fcntl.h>
|
||||
#include <limits.h>
|
||||
#include <pthread.h>
|
||||
#include <stdatomic.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <sys/types.h>
|
||||
#include <cutils/atomic.h>
|
||||
#include <cutils/compiler.h>
|
||||
#include <cutils/properties.h>
|
||||
#include <cutils/trace.h>
|
||||
|
@ -37,11 +37,11 @@
|
|||
*/
|
||||
#define ATRACE_MESSAGE_LENGTH 1024
|
||||
|
||||
volatile int32_t atrace_is_ready = 0;
|
||||
atomic_bool atrace_is_ready = ATOMIC_VAR_INIT(false);
|
||||
int atrace_marker_fd = -1;
|
||||
uint64_t atrace_enabled_tags = ATRACE_TAG_NOT_READY;
|
||||
static bool atrace_is_debuggable = false;
|
||||
static volatile int32_t atrace_is_enabled = 1;
|
||||
static atomic_bool atrace_is_enabled = ATOMIC_VAR_INIT(true);
|
||||
static pthread_once_t atrace_once_control = PTHREAD_ONCE_INIT;
|
||||
static pthread_mutex_t atrace_tags_mutex = PTHREAD_MUTEX_INITIALIZER;
|
||||
|
||||
|
@ -58,7 +58,7 @@ void atrace_set_debuggable(bool debuggable)
|
|||
// the Zygote process from tracing.
|
||||
void atrace_set_tracing_enabled(bool enabled)
|
||||
{
|
||||
android_atomic_release_store(enabled ? 1 : 0, &atrace_is_enabled);
|
||||
atomic_store_explicit(&atrace_is_enabled, enabled, memory_order_release);
|
||||
atrace_update_tags();
|
||||
}
|
||||
|
||||
|
@ -155,8 +155,8 @@ static uint64_t atrace_get_property()
|
|||
void atrace_update_tags()
|
||||
{
|
||||
uint64_t tags;
|
||||
if (CC_UNLIKELY(android_atomic_acquire_load(&atrace_is_ready))) {
|
||||
if (android_atomic_acquire_load(&atrace_is_enabled)) {
|
||||
if (CC_UNLIKELY(atomic_load_explicit(&atrace_is_ready, memory_order_acquire))) {
|
||||
if (atomic_load_explicit(&atrace_is_enabled, memory_order_acquire)) {
|
||||
tags = atrace_get_property();
|
||||
pthread_mutex_lock(&atrace_tags_mutex);
|
||||
atrace_enabled_tags = tags;
|
||||
|
@ -183,7 +183,7 @@ static void atrace_init_once()
|
|||
atrace_enabled_tags = atrace_get_property();
|
||||
|
||||
done:
|
||||
android_atomic_release_store(1, &atrace_is_ready);
|
||||
atomic_store_explicit(&atrace_is_ready, true, memory_order_release);
|
||||
}
|
||||
|
||||
void atrace_setup()
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
#define __unused __attribute__((__unused__))
|
||||
#endif
|
||||
|
||||
volatile int32_t atrace_is_ready = 1;
|
||||
atomic_bool atrace_is_ready = ATOMIC_VAR_INIT(true);
|
||||
int atrace_marker_fd = -1;
|
||||
uint64_t atrace_enabled_tags = 0;
|
||||
|
||||
|
|
Loading…
Reference in New Issue