This change switches atrace to use a table-driven approach to enabling and
disabling options. It unifies how framework and kernel tracing are enabled,
and causes userland tracing options to be picked up by currently running
processes.
Change-Id: Iba2a3012ca0a67c4defdd076bce597db26e9f539
setfilecon is not required on libsymlinks when target
doesn't exist. A bootloop is caused without this
change.
Change-Id: Ia895d9063f42885a3db6e8ca30cee5dceb8c1bac
Signed-off-by: rpcraig <rpcraig@tycho.ncsc.mil>
for_each_pid only finds processes and not their threads. Add
for_each_tid and call it for show_wchan so we can see where all
threads are blocked in the kernel.
Change-Id: Iffb59f7c2933cecf51cdd358a36e19932c2f24c7
Dump /d/extfrag/unusable_index in bugreports. It shows the
percentage of memory in each zone that is not available for
allocations for each order.
Change-Id: I2af6680cb609887ea7b3d6107d1aa88bd0206b52
This change makes enabling clock tracing and bus bandwidth tracing depend on
whether the device's kernel supports these features. If it's not supported it
will be skipped.
Change-Id: I51d57299693635b0ecebb75de5dccd5b62d47be3
This change allows atrace to be run on a user build, where it is not run as
root. Some command line options still require root, and atrace will refuse to
run if those options are specified when run as non-root.
Bug: 6513400
Change-Id: I29984cb8a7c3ad80ba5fa6b031ed8ff81acabacf
When "adb bugreport" was run on previous adb releases, it
called "adb shell dumpstate". In later versions of Android,
this was changed to "adb shell bugreport", which starts
the dumpstate service.
Modify the dumpstate command so that it calls bugreport
when it's not running as root. This allows both
"adb shell dumpstate" and "adb shell bugreport" to have
the exact same output.
Bug: 6391938
Change-Id: Ia32bb9ebc579db3bee7caa0fe66dc3f124d60a12
The newer kernels now have /proc/net/xt_qtaguid/iface_stat_fmt.
Add the extra iptables output and remove ip6tables for nat which doesn't
exist.
Change-Id: I819c707b337a707ca0acd87d9ab38cd68ca0f36c
adb bugreport > b & sleep 5; kill $?
will show that a bunch of tools will SIGPIPE when trying to output data
which is normal.
We don't have a way on linux (bsd yes), to set NOSIGPIPE on the file desc
passed down via fork/exec.
Bug: 6447319
Change-Id: I25b30a823addcff89d252f162d0a07035d4fdd3f
This change adds the -z command line flag to atrace to enable support for
compressing the trace with zlib as it's printed to stdout.
Change-Id: I45301c63a4d1d388152244fec3c9e05e554598e8
This change allows atrace to run on kernels that do not have CPU frequency
interactive governor tracing enabled in the kernel.
Change-Id: Ibfde751da7b6cc9a55794355093a37feb28f5e52
The umask changed for init. We have to force /data/anr to be world
readble and /data/anr/traces.txt to be world writable so dalvik
processes can write to it.
Hopefully this is a short term change while we investigate tightening
up these permissions.
Bug: 6300296
Change-Id: Iacb4c9f1bc69d2ac679697f9cf9a52694f888489
This change adds two command line optiosn:
-b for setting the trace buffer size
-f for enabling tracing of the CPU frequency
-l for enabling tracing of the CPU load
Change-Id: Id99851a4c4eba5cfed218f29081e072bbe492133
This change makes the atrace module tag 'debug' so that the binary is
included in all debug builds.
Change-Id: I1fdb87be0461daf686e52ded04b37b9a122edea3