The typo (in specifying the --kernel-range argument) completely breaks kernel profiling because the kernel end address will always be 0 and < the start address. All kernel samples will therefore be discarded. I've also added very basic support for turning on kernel profiling via this script. Change-Id: I64b4063cb994ca94a51ed5aa0159aa4ae1627969
Bug: 5010576 Change-Id: I4e916efded024ea68713dde817dd4bb7ec83c285
Now support importing dumps and running reports using a simple script. Eliminated some spurious errors and warnings in the oprofile tools when profiling Android libraries. Change-Id: I618cf6f8937a6ab5f45b3d45bdf860792b6bebbe
Now taking into account differences in the library dependencies of libintl on darwin vs. linux. On darwin, we need to link with libiconv which is provided as a shared library on the platform. On linux, iconv is included in libc so we don't need anything special. Change-Id: Ide89061cce0352c83b7401d9f5d594e9625b1868
This reverts commit 245b758.
Was trying to build some components even when HAVE_LIBBFD was false. Change-Id: Ied9aefcc42070ae2e6cd7cc64f7323f72e64dd82
Need host prebuilt for libiconv.a because libintl.a is linked with it. Bug: 3439321 Change-Id: Ifabae6a0735f3d98287069e7b881a88c4933c56b
Added a new wrapper script that will help automate more of the process of setting up and running oprofile on a remote device. There is more work to be done here once the kernel perf event issues that hinder reliability (bug: 2975913) are resolved. Change-Id: I942ee74912f1e4c87b4c43aca9937b3f3f1780f6
There have been a few patches to oprofile for newer ARM architectures since 0.9.6. Pruned out irrelevant auto-generated files from the previous dump so this is closer to being a mirror of the actual oprofile repository. Change-Id: I889053d30aae433a199a0a18585c66b88ff8de14
Some of the new build targets are disabled for now because libbfd is not currently provided by the prebuilt toolchain for all platforms. Change-Id: Ie2c24bf997c9c5f15f6c3e2eaf949d73578890d8
This patch modifies the inline x86 assembly fragments to properly save ebx when calling the cpuid instruction. Otherwise, the compiler will error, complaining that the PIC register (ebx) is clobbered. Change-Id: Ibc091484068dfb87812c59dbc3976d26d922eebc
Copy in the rest of the oprofile 0.9.6 tree so we have a source copy to match the prebuilt binaries that are checked into external/. Change-Id: Iaac327571d5d583594a4194973bf256569061048
Oprofile's hash function uses a 64-bit value for the key where the high 32-bit are the 'from' address in a backtrace, and the low 32-bits are the current PC. However, the hash function was: uint32_t temp = (value >> 32) ^ value; return ((temp << 0) ^ (temp >> 8)) & data->hash_mask; If 'from' and 'to' are the same (recursive function), this hashes to 0, and you end up with lots of collisions, turning the theoretically O(1) operation into O(n). To fix it, I just drop the high 32-bits from the hash: uint32_t temp = value & 0xffffffff; return ((temp << 0) ^ (temp >> 8)) & data->hash_mask; In testing, this drastically reduces the oprofile overhead for some tracing. Change-Id: I8ae65a8a73771c89b576c895f135efd7b730eaf5
Merge commit '44ce8454876f33304daf17da83614acaf8c189c2' * commit '44ce8454876f33304daf17da83614acaf8c189c2': Add timer mode in opcontrol.
Merge commit '041ee6ccda354960ebc1e1ccfff78685ec5326e1' into gingerbread-plus-aosp * commit '041ee6ccda354960ebc1e1ccfff78685ec5326e1': Add timer mode in opcontrol.
(cherry-picked from master - temporary workaround for the transition from oprofile to perf events) Change-Id: I647523e68814dee525b7599e9088b68a19e67f4b
The 'mode' parameter to mkdir() is in octal, so it should have a leading 0. Also, directories need their 'x' bits set. Change-Id: I95bdae777ed31a8f99d1eeb4974a9ceb8d85633d
Change-Id: I7c07811f0e124b24f8be17c17c41061f045f4c4f Signed-off-by: Mike Lockwood <firstname.lastname@example.org>
1) Display samples collected in the code cache into dalvik-jit-code-cache. 2) Tolerate phantom event on counter 3 when it is not configured.
Merge commit '56b2728f588644e40195908e68985b9214fcfe8a' * commit '56b2728f588644e40195908e68985b9214fcfe8a': android-2.1_r1 snapshot
Merge commit 'e58df036341d4926db42c06b9f8cf6504a3a95fe' into eclair-plus-aosp * commit 'e58df036341d4926db42c06b9f8cf6504a3a95fe': android-2.1_r1 snapshot