| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
| |
* runtime/task_finder_vma.c: Replace all mutex calls with appropriate
read or write (un)lock calls.
|
|
|
|
|
|
|
|
|
| |
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).
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
| |
|
| |
|
|
|
|
| |
tracing conditional on DEBUG_TASK_FINDER_VMA
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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().
|
|
|
|
|
|
|
|
|
| |
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.
|
|
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.
|