From: William C. <wc...@us...> - 2019-08-14 18:02:01
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "oprofile". The branch, master has been updated via 8b812f07b591f50c950b098a8791730985e7158d (commit) from 8aacb573cd2c4a2f8160d99ff100ad0aa5e7859d (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 8b812f07b591f50c950b098a8791730985e7158d Author: will schmidt <wil...@vn...> Date: Fri Jul 26 15:38:58 2019 -0500 Proposed fix for oprofile JIT bad event spec error Hi Oprofile-devs, Attached is a fix for a problem we have seen recently when trying to profile against java/JIT workloads. The error floated to the user at opreport time is: opreport error: parse_event_spec(): bad event specification: 165624.0x Where the 165624 value will match the PIDs of the processes being profiled. This ends up being an issue with how we are building the string for the file that contains the ELF blob for the java/JIT code (i.e. 12345.jo). We were not truncating our 'path' string such that when we strncpy'd it into our path-and-file variable, we were getting part of an address range (12345.0x) instead of the desired .jo suffix. The code has been updated to correct that. Sniff testing shows we are now successfully processing the .jo contents, and no longer seeing the bad event spec error. Tested locally, this appears to resolve the issue. agents/jvmti/libjvmti_oprofile.c: - update strncpy call to avoid gcc warning on strncpy parameters. opjitconv/opjitconv.c: - update logic around calculation of elf_file_size, and rework snprintf calls so we properly truncate the input string. Signed-off-by: Will Schmidt <wil...@vn...> ----------------------------------------------------------------------- Summary of changes: agents/jvmti/libjvmti_oprofile.c | 2 +- opjitconv/opjitconv.c | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) hooks/post-receive -- oprofile |