Merge "Do not check for debuggable / profilable for app tracing."
This commit is contained in:
commit
c89dd8594e
2 changed files with 11 additions and 32 deletions
|
@ -103,14 +103,6 @@ void atrace_setup();
|
|||
*/
|
||||
void atrace_update_tags();
|
||||
|
||||
/**
|
||||
* Set whether the process is debuggable. By default the process is not
|
||||
* considered debuggable. If the process is not debuggable then application-
|
||||
* level tracing is not allowed unless the ro.debuggable system property is
|
||||
* set to '1'.
|
||||
*/
|
||||
void atrace_set_debuggable(bool debuggable);
|
||||
|
||||
/**
|
||||
* Set whether tracing is enabled for the current process. This is used to
|
||||
* prevent tracing within the Zygote process.
|
||||
|
|
|
@ -52,7 +52,6 @@ constexpr uint32_t kSeqNoNotInit = static_cast<uint32_t>(-1);
|
|||
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 atomic_bool atrace_is_enabled = ATOMIC_VAR_INIT(true);
|
||||
static pthread_mutex_t atrace_tags_mutex = PTHREAD_MUTEX_INITIALIZER;
|
||||
|
||||
|
@ -96,15 +95,6 @@ uint64_t atrace_get_enabled_tags()
|
|||
return atrace_enabled_tags;
|
||||
}
|
||||
|
||||
// Set whether this process is debuggable, which determines whether
|
||||
// application-level tracing is allowed when the ro.debuggable system property
|
||||
// is not set to '1'.
|
||||
void atrace_set_debuggable(bool debuggable)
|
||||
{
|
||||
atrace_is_debuggable = debuggable;
|
||||
atrace_update_tags();
|
||||
}
|
||||
|
||||
// Check whether the given command line matches one of the comma-separated
|
||||
// values listed in the app_cmdlines property.
|
||||
static bool atrace_is_cmdline_match(const char* cmdline)
|
||||
|
@ -128,24 +118,21 @@ static bool atrace_is_cmdline_match(const char* cmdline)
|
|||
// Determine whether application-level tracing is enabled for this process.
|
||||
static bool atrace_is_app_tracing_enabled()
|
||||
{
|
||||
bool sys_debuggable = property_get_bool("ro.debuggable", 0);
|
||||
bool result = false;
|
||||
|
||||
if (sys_debuggable || atrace_is_debuggable) {
|
||||
// Check whether tracing is enabled for this process.
|
||||
FILE * file = fopen("/proc/self/cmdline", "re");
|
||||
if (file) {
|
||||
char cmdline[4096];
|
||||
if (fgets(cmdline, sizeof(cmdline), file)) {
|
||||
result = atrace_is_cmdline_match(cmdline);
|
||||
} else {
|
||||
ALOGE("Error reading cmdline: %s (%d)", strerror(errno), errno);
|
||||
}
|
||||
fclose(file);
|
||||
// Check whether tracing is enabled for this process.
|
||||
FILE * file = fopen("/proc/self/cmdline", "re");
|
||||
if (file) {
|
||||
char cmdline[4096];
|
||||
if (fgets(cmdline, sizeof(cmdline), file)) {
|
||||
result = atrace_is_cmdline_match(cmdline);
|
||||
} else {
|
||||
ALOGE("Error opening /proc/self/cmdline: %s (%d)", strerror(errno),
|
||||
errno);
|
||||
ALOGE("Error reading cmdline: %s (%d)", strerror(errno), errno);
|
||||
}
|
||||
fclose(file);
|
||||
} else {
|
||||
ALOGE("Error opening /proc/self/cmdline: %s (%d)", strerror(errno),
|
||||
errno);
|
||||
}
|
||||
|
||||
return result;
|
||||
|
|
Loading…
Reference in a new issue