This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
[Bug translator/11097] New: debug memory tracker shows memory overwrite in MAXNESTING
- From: "dsmith at redhat dot com" <sourceware-bugzilla at sourceware dot org>
- To: systemtap at sources dot redhat dot com
- Date: 16 Dec 2009 15:25:48 -0000
- Subject: [Bug translator/11097] New: debug memory tracker shows memory overwrite in MAXNESTING
- Reply-to: sourceware-bugzilla at sourceware dot org
After getting the debug memory tracker (activated with -DDEBUG_MEM) going again,
it found a problem with the following testcase (part of
src/testsuite/systemtap.base/control_limits.exp):
====
# stap -u -DMAXNESTING=3 ../src/testsuite/systemtap.base/control_limits.stp
ERROR: MAXNESTING exceeded near identifier 'recurse' at
../src/testsuite/systemtap.base/control_limits.stp:3:10
WARNING: Number of errors: 1, skipped probes: 0
====
Note that the above testcase is designed to fail, so the error printed there is OK.
When run, the debug memory tracker uses printk to print the following on the
console:
====
Dec 15 17:02:02 kvm-rawhide-64-1 kernel: SYSTEMTAP ERROR: Memory fence corrupted
after allocated memory
Dec 15 17:02:02 kvm-rawhide-64-1 kernel: at addr ffff88003e476698. (Allocation
ends at ffff88003e476697)
====
Since the memory fence (a small bit of memory placed after every allocation) has
been overwritten, this means systemtap is writing past the end of the allocated
memory.
After a bit of debugging, this appears to be happening to the allocated context
structure.
--
Summary: debug memory tracker shows memory overwrite in
MAXNESTING
Product: systemtap
Version: unspecified
Status: NEW
Severity: normal
Priority: P2
Component: translator
AssignedTo: systemtap at sources dot redhat dot com
ReportedBy: dsmith at redhat dot com
http://sourceware.org/bugzilla/show_bug.cgi?id=11097
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.