This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
[Bug translator/11151] Leakage of stap_uprobes slots
- From: "wcohen at redhat dot com" <sourceware-bugzilla at sourceware dot org>
- To: systemtap at sources dot redhat dot com
- Date: 14 Jan 2010 20:06:07 -0000
- Subject: [Bug translator/11151] Leakage of stap_uprobes slots
- References: <20100108221421.11151.wcohen@redhat.com>
- Reply-to: sourceware-bugzilla at sourceware dot org
------- Additional Comments From wcohen at redhat dot com 2010-01-14 20:06 -------
Created an attachment (id=4517)
--> (http://sourceware.org/bugzilla/attachment.cgi?id=4517&action=view)
Output with stap -DDEBUG_UPROBES -DDEBUG_TASK_FINDER_VMA
Had a very simple python script to run in pyhello.py:
print "hello"
Generated a log with
stap -vv -m x -k -DDEBUG_UPROBES -DDEBUG_TASK_FINDER_VMA \
pytrace2.stp -c 'python -c ~/pyhello.py' >& /tmp/trace.log
In the trace.log see the probe points be placed in reasonable places:
stap_uprobe_mmap_found:297: +mmap R-X pid 9635 path
/usr/lib64/libpython2.6.so.1.0 addr 00007ffff7c21000 length 3891200 offset
(null) stf ffffffffa021e660 ffffffffa021e660 path
/usr/lib64/libpython2.6.so.1.0
stap_uprobe_change_plus:67: +uprobe spec 0 idx 0 process python[9635] addr
00007ffff7cf8cc4 pp process("/usr/lib64/libpython2.6.so.1.0").statement(883908)
stap_uprobe_change_plus:67: +uprobe spec 1 idx 1 process python[9635] addr
00007ffff7cf9394 pp process("/usr/lib64/libpython2.6.so.1.0").statement(885652)
The addresses match up with the executable part of the libpython2.6.so.1.0 in
the memory map:
00007ffff7c21000 1464K r-x-- /usr/lib64/libpython2.6.so.1.0
00007ffff7d8f000 2044K ----- /usr/lib64/libpython2.6.so.1.0
00007ffff7f8e000 236K rw--- /usr/lib64/libpython2.6.so.1.0
However, unmap callback in trace.log does not seem to have the
correct addr or length as arguments. The address and length do not
seem to correspond to anything in the mapping. There are some
additional debugging code in stap_uprobe_change_minus.:
stap_uprobe_munmap_found:312: -mmap pid 9635 addr 00007ffff7fd7000 length
154251 stf ffffffffa021e660 ffffffffa021e660 path
/usr/lib64/libpython2.6.so.1.0
stap_uprobe_change_minus:178: stap_uprobe_change_minus start
relocation=00007ffff7fd7000, length=0000000000025a8b
stap_uprobe_change_minus:216: (!0 && 9635 == 9635 && 00007ffff7cf8cc4 >=
00007ffff7fd7000 && 00007ffff7cf8cc4 < 00007ffff7ffca8b
(00007ffff7fd7000+0000000000025a8b)
stap_uprobe_change_minus:216: (!0 && 9635 == 9635 && 00007ffff7cf9394 >=
00007ffff7fd7000 && 00007ffff7cf9394 < 00007ffff7ffca8b
(00007ffff7fd7000+0000000000025a8b)
stap_uprobe_change_minus:260: stap_uprobe_change_minus end
stap_uprobe_munmap_found:312: -mmap pid 9635 addr 00007ffff7ffc000 length 4096
stf ffffffffa021e660 ffffffffa021e660 path /usr/lib64/libpython2.6.so.1.0
stap_uprobe_change_minus:178: stap_uprobe_change_minus start
relocation=00007ffff7ffc000, length=0000000000001000
stap_uprobe_change_minus:216: (!0 && 9635 == 9635 && 00007ffff7cf8cc4 >=
00007ffff7ffc000 && 00007ffff7cf8cc4 < 00007ffff7ffd000
(00007ffff7ffc000+0000000000001000)
stap_uprobe_change_minus:216: (!0 && 9635 == 9635 && 00007ffff7cf9394 >=
00007ffff7ffc000 && 00007ffff7cf9394 < 00007ffff7ffd000
(00007ffff7ffc000+0000000000001000)
stap_uprobe_change_minus:260: stap_uprobe_change_minus end
stap_uprobe_munmap_found:312: -mmap pid 9635 addr 00007ffff7ffc000 length 4096
stf ffffffffa021e660 ffffffffa021e660 path /usr/lib64/libpython2.6.so.1.0
stap_uprobe_change_minus:178: stap_uprobe_change_minus start
relocation=00007ffff7ffc000, length=0000000000001000
stap_uprobe_change_minus:216: (!0 && 9635 == 9635 && 00007ffff7cf8cc4 >=
00007ffff7ffc000 && 00007ffff7cf8cc4 < 00007ffff7ffd000
(00007ffff7ffc000+0000000000001000)
stap_uprobe_change_minus:216: (!0 && 9635 == 9635 && 00007ffff7cf9394 >=
00007ffff7ffc000 && 00007ffff7cf9394 < 00007ffff7ffd000
(00007ffff7ffc000+0000000000001000)
stap_uprobe_change_minus:260: stap_uprobe_change_minus end
--
http://sourceware.org/bugzilla/show_bug.cgi?id=11151
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.