From b84f3753b06258c02b768beb586bba3213890fff Mon Sep 17 00:00:00 2001 From: David Smith Date: Mon, 23 Jun 2008 16:49:40 -0500 Subject: Fixed offset argument to vm_callback. 2008-06-23 David Smith * task_finder.c (__stp_utrace_task_finder_target_quiesce): Fixed vm_callback offset by shifting it left PAGE_SHIFT bits. (__stp_target_call_vm_callback): Ditto. (__stp_utrace_task_finder_target_syscall_exit): Ditto. --- runtime/task_finder.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'runtime/task_finder.c') diff --git a/runtime/task_finder.c b/runtime/task_finder.c index 71b11569..07610864 100644 --- a/runtime/task_finder.c +++ b/runtime/task_finder.c @@ -586,7 +586,8 @@ __stp_utrace_task_finder_target_quiesce(struct utrace_attached_engine *engine, rc = tgt->vm_callback(tsk, 1, mmpath, vma->vm_start, vma->vm_end, - vma->vm_pgoff); + (vma->vm_pgoff + << PAGE_SHIFT)); if (rc != 0) { _stp_error("vm callback for %d failed: %d", (int)tsk->pid, rc); @@ -709,7 +710,8 @@ __stp_target_call_vm_callback(struct stap_task_finder_target *tgt, } else { rc = tgt->vm_callback(tsk, 1, mmpath, vma->vm_start, - vma->vm_end, vma->vm_pgoff); + vma->vm_end, + (vma->vm_pgoff << PAGE_SHIFT)); if (rc != 0) { _stp_error("vm callback for %d failed: %d", (int)tsk->pid, rc); @@ -819,7 +821,8 @@ __stp_utrace_task_finder_target_syscall_exit(struct utrace_attached_engine *engi rc = tgt->vm_callback(tsk, 0, NULL, entry->vm_start, entry->vm_end, - entry->vm_pgoff); + (entry->vm_pgoff + << PAGE_SHIFT)); if (rc != 0) { _stp_error("vm callback for %d failed: %d", (int)tsk->pid, rc); @@ -852,7 +855,8 @@ __stp_utrace_task_finder_target_syscall_exit(struct utrace_attached_engine *engi rc = tgt->vm_callback(tsk, 0, NULL, entry->vm_start, entry->vm_end, - entry->vm_pgoff); + (entry->vm_pgoff + << PAGE_SHIFT)); if (rc != 0) { _stp_error("vm callback for %d failed: %d", (int)tsk->pid, rc); -- cgit