This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Add build id support for user modules. The build id is an offset which is adjusted relative to dwarf_module_base for ET_EXEC or the load address from the task manager for ET_DYN.
sym.c Created generic build id checker: _stp_build_id_check Modified _stp_module_check, the kernel build id checker, to use _stp_build_id_check Created _stp_usermodule_check, the user build id checker, which uses _stp_build_id_check. This is called from the task manager callback stap_uprobe_change_plus for the process found and mmap found cases.
sym.h Added module_base for holding the base address for ET_EXEC. For ET_DYN case the load address from task manager is used
translate.cxx Modified dump_unwindsyms: 1. relax the check to allow user modules to set build_id_vaddr 2. save module_base for ET_EXEC. For ET_DYN we use the task finder. 3. relax the check to allow user modules to set build_id_bits. 4. add a ET_DYN case for outputting build_id_vaddr
For the above the build id offsets look like: (via build_id_vaddr - base in dump_unwindsyms) : .name = "libsdt_V3_uprobe.so",....build_id_offset = 0x1a0, .name = "sdt_misc_V3_uprobe.x",....build_id_offset = 0x24c,
Attachment:
,git.diff
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |