summaryrefslogtreecommitdiffstats
path: root/runtime
diff options
context:
space:
mode:
authorStan Cox <scox@redhat.com>2010-01-15 15:06:35 -0500
committerStan Cox <scox@redhat.com>2010-01-15 15:06:35 -0500
commit77694f530954dfeaf76662ebaae67ac39239a24b (patch)
treefef1a3f05ba8de5086a088a3fd0acf743bdc4e9d /runtime
parent2a1c9b5db533fe7d2d2d4bac572195c490de62fb (diff)
downloadsystemtap-steved-77694f530954dfeaf76662ebaae67ac39239a24b.tar.gz
systemtap-steved-77694f530954dfeaf76662ebaae67ac39239a24b.tar.xz
systemtap-steved-77694f530954dfeaf76662ebaae67ac39239a24b.zip
Relax sdt address check for attach to running process case.
* uprobes-common.c (stap_uprobe_change_plus): Relax VM_EXEC check.
Diffstat (limited to 'runtime')
-rw-r--r--runtime/uprobes-common.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/runtime/uprobes-common.c b/runtime/uprobes-common.c
index 58e3a05f..17ed69fc 100644
--- a/runtime/uprobes-common.c
+++ b/runtime/uprobes-common.c
@@ -37,7 +37,7 @@ static int stap_uprobe_change_plus (struct task_struct *tsk, unsigned long reloc
if (likely(sups->tfi != tfi)) continue;
/* skip probes with an address beyond this map event; should not
happen unless a shlib/exec got mmapped in weirdly piecemeal */
- if (likely((vm_flags & VM_EXEC) && ((sups->address >= length) || (sups->sdt_sem_offset >= length)))) continue;
+ if (likely((vm_flags & VM_EXEC) && sups->address >= length)) continue;
/* Found a uprobe_spec for this stap_uprobe_tf. Need to lock the
stap_uprobes[] array to allocate a free spot, but then we can
@@ -159,7 +159,7 @@ static int stap_uprobe_change_semaphore_plus (struct task_struct *tsk, unsigned
_stp_dbug(__FUNCTION__,__LINE__, "+semaphore %#x @ %#lx spec %d idx %d task %d\n", sdt_semaphore, sup->sdt_sem_address, sup->spec_index, i, tsk->tgid);
}
#endif
- rc = put_user (sdt_semaphore, (unsigned short __user*) sup->sdt_sem_address);
+ rc = put_user (sdt_semaphore, (unsigned short __user*) sup->sdt_sem_address);
/* XXX: need to analyze possibility of race condition */
}
}