summaryrefslogtreecommitdiffstats
path: root/runtime/task_finder.c
diff options
context:
space:
mode:
authorDavid Smith <dsmith@redhat.com>2008-06-23 16:49:40 -0500
committerDavid Smith <dsmith@redhat.com>2008-06-23 16:49:40 -0500
commitb84f3753b06258c02b768beb586bba3213890fff (patch)
treefa8b4434262e9472082d5d85e2d8fb3993e0c324 /runtime/task_finder.c
parent6b4b4f4a9e8d56db4050cf66572604708f483115 (diff)
downloadsystemtap-steved-b84f3753b06258c02b768beb586bba3213890fff.tar.gz
systemtap-steved-b84f3753b06258c02b768beb586bba3213890fff.tar.xz
systemtap-steved-b84f3753b06258c02b768beb586bba3213890fff.zip
Fixed offset argument to vm_callback.
2008-06-23 David Smith <dsmith@redhat.com> * 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.
Diffstat (limited to 'runtime/task_finder.c')
-rw-r--r--runtime/task_finder.c12
1 files changed, 8 insertions, 4 deletions
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);