Enhanced tracing tool for Android derived from atrace
- Download Android source with patches defined in littlewhywhat/local_manifests Refer to http://source.android.com/source/downloading.html
repo init -u https://android.googlesource.com/platform/manifest -b android-7.1.2_r19
git clone -b extrace https://github.com/littlewhywhat/local_manifests .repo/local_manifests
repo sync -j8
- add to device/brcm/rpi3/rpi3.mk lines:
PRODUCT_PACKAGES += \
extrace
https://github.com/android-rpi/device_brcm_rpi3
Use -j[n] option on sync & build steps, if build host has a good number of CPU cores.
Graphics HAL of this build : https://github.com/anholt/mesa/wiki/VC4
- all
ONE_SHOT_MAKEFILE="frameworks/native/cmds/extrace/Android.mk" make -j16 -C "/home/littlewhywhat/Projects/aosp" GET-INSTALL-PATH all_modules
- on target
source build/envsetup.sh
lunch rpi3-eng
python ./development/testrunner/runtest.py -x frameworks/native/cmds/extrace/
- on host linux x86-64
make extrace_test_host
./out/host/linux-86/bin/extrace_test64
to run you need to mount kernel debug file system first
mount -t debugfs none /sys/kernel/debug
then list categories and choose one to trace
extrace --list_categories
extrace some_category
extrace -d am -e sched -p 100000 -m 500 -pid some_PID -o /data/trace