summaryrefslogtreecommitdiffstats
path: root/runtime/task_finder_vma.c
Commit message (Collapse)AuthorAgeFilesLines
* Get rid of __stp_tf_get_vma_entry_addr function.Mark Wielaard2009-03-191-31/+9
| | | | | | | | * runtime/task_finder_vma.c (__stp_tf_get_vma_entry_addr): Deleted. (struct __stp_tf_vma_entry): Replace module by user void* field. (stap_add_vma_map_info): Take a void *user arg. (stap_find_vma_map_info): Take a void **user arg. * runtime/sym.c (_stp_mod_sec_lookup): Use stap_find_vma_map_info.
* Replace mutex in task_finder_vma with rwlock to be interrupt context safe.Mark Wielaard2009-03-181-31/+51
| | | | | * runtime/task_finder_vma.c: Replace all mutex calls with appropriate read or write (un)lock calls.
* Don't mutex_unlock in __stp_tf_get_vma_map_entry_internal.Mark Wielaard2009-03-181-1/+0
| | | | | | | | | All callers of __stp_tf_get_vma_map_entry_internal lock and unlock the mutex correctly themselves in all cases. This unlock would trigger a double unlock. * runtime/task_finder_vma.c (__stp_tf_get_vma_map_entry_internal): Don't mutex_unlock(&__stp_tf_vma_mutex).
* Move vma module tracking from pr6866 branch to master.Mark Wielaard2009-03-151-1/+29
| | | | | | | | | | | | * tapsets.cxx (utrace_derived_probe_group::emit_module_decls): Always emit vm callback probe for __stp_tf_vm_cb. * runtime/task_finder.c (__stp_tf_vm_cb): Always expose, move _stp_dbug statements under ifdef DEBUG_TASK_FINDER_VMA. Find and record corresponding module when vm_path not NULL. * runtime/task_finder_vma.c (struct __stp_tf_vma_entry): Add _stp_module. (stap_add_vma_map_info): Add _stp_module argument and assign. (__stp_tf_get_vma_entry_addr): New static function to get the __stp_tf_vma_entry given an address.
* Fix compilation warning of uninitialized value in gcc 3.x.Wenji Huang2008-10-171-1/+1
|
* fix #if->#ifdef DEBUG_TASK_FINDER_VMAFrank Ch. Eigler2008-09-011-1/+1
|
* pr4225: fix shared library address range checks; make more task_finder_vma ↵Frank Ch. Eigler2008-08-221-5/+7
| | | | tracing conditional on DEBUG_TASK_FINDER_VMA
* Saves thread vma information.David Smith2008-08-081-0/+132
| | | | | | | | | | | | 2008-08-08 David Smith <dsmith@redhat.com> * task_finder.c (__stp_tf_vm_cb): Added calls to save/delete vma information. * task_finder_vma.c (__stp_tf_vma_map_hash): New function. (__stp_tf_get_vma_map_entry_internal): Ditto. (stap_add_vma_map_info): Ditto. (stap_remove_vma_map_info): Ditto. (stap_find_vma_map_info): Ditto.
* No longer allocates structure used to save vma information.David Smith2008-07-211-4/+65
| | | | | | | | | | | | | | | 2008-07-21 David Smith <dsmith@redhat.com> * task_finder_vma.c (__stp_tf_vma_initialize): New function to initialize the free list. (__stp_tf_vma_put_free_entry): Puts a vma entry back on the free list. (__stp_tf_add_vma): Instead of allocating a vma entry, grab one from the free list by calling __stp_tf_vma_put_free_entry(). (__stp_tf_remove_vma_entry): Instead of freeing a vma entry, call __stp_tf_vma_put_free_entry() to put it on the free list instead. * task_finder.c (stap_start_task_finder): Calls __stp_tf_vma_initialize().
* Made RHEL5 changes.David Smith2008-06-231-1/+1
| | | | | | | | | 2008-06-23 David Smith <dsmith@redhat.com> * task_finder_vma.c (__stp_tf_vma_hash): Improved determination of whether this is a 64-bit platform. * syscall.h: Handles kernels with older style register definitions.
* Major update to memory map change notification code.David Smith2008-06-231-0/+112
2008-06-23 David Smith <dsmith@redhat.com> * tapsets.cxx (utrace_derived_probe_group::emit_probe_decl): Handles UDPF_NONE value. (utrace_derived_probe_group::emit_vm_callback_probe_decl): New function. (utrace_derived_probe_group::emit_module_decls): Calls emit_vm_callback_probe_decl() to set up vm_callbacks. 2008-06-23 David Smith <dsmith@redhat.com> * task_finder.c (__stp_tf_vm_cb): New function. (stap_register_task_finder_target): Sets up syscall entry and syscall exit handlers. (__stp_find_file_based_vma): New function. (__stp_utrace_task_finder_target_syscall_entry): New function. Saves vma information off at syscall entry. (__stp_target_call_vm_callback): New function. (__stp_utrace_task_finder_target_syscall_exit): New function. Handles changes to memory maps based on information saved at syscall entry. * syscall.h: New file containing syscall function. * task_finder_vma.c: New file containing saved vma information handling functions.