* [Bug translator/10762] New: turn off userspace prologue heuristics for recent gcc
@ 2009-10-13 0:12 fche at redhat dot com
2009-10-16 20:00 ` [Bug translator/10762] " fche at redhat dot com
` (5 more replies)
0 siblings, 6 replies; 7+ messages in thread
From: fche at redhat dot com @ 2009-10-13 0:12 UTC (permalink / raw)
To: systemtap
We currently force on prologue searching for userspace process
files, since widespread gcc produces poor dwarf data to locate
incoming $$parms.
If we can detect (or have a user assert) that modern (vta-based)
debuginfo is available for a given ELF file, we should disable
the heuristics. If automatic means are unavailable, perhaps another
command line option like "-P" would be needed, or (yikes) a probe
point syntax extension.
One reason for this is that an instruction somewhat below
the prologue is more likely to be within a loop, which could
result in false "entry" probe hits at every iteration.
--
Summary: turn off userspace prologue heuristics for recent gcc
Product: systemtap
Version: unspecified
Status: NEW
Severity: normal
Priority: P2
Component: translator
AssignedTo: systemtap at sources dot redhat dot com
ReportedBy: fche at redhat dot com
http://sourceware.org/bugzilla/show_bug.cgi?id=10762
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug translator/10762] turn off userspace prologue heuristics for recent gcc
2009-10-13 0:12 [Bug translator/10762] New: " fche at redhat dot com
@ 2009-10-16 20:00 ` fche at redhat dot com
2009-10-16 20:24 ` fche at redhat dot com
` (4 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: fche at redhat dot com @ 2009-10-16 20:00 UTC (permalink / raw)
To: systemtap
------- Additional Comments From fche at redhat dot com 2009-10-16 20:00 -------
mjw advises that a "readelf --debug-dump=loc a.out | egrep (stack_implicit)_value"
might be a usable heuristic that VTA was used to compile a given object file.
--
http://sourceware.org/bugzilla/show_bug.cgi?id=10762
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug translator/10762] turn off userspace prologue heuristics for recent gcc
2009-10-13 0:12 [Bug translator/10762] New: " fche at redhat dot com
2009-10-16 20:00 ` [Bug translator/10762] " fche at redhat dot com
@ 2009-10-16 20:24 ` fche at redhat dot com
2009-10-16 21:18 ` fche at redhat dot com
` (3 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: fche at redhat dot com @ 2009-10-16 20:24 UTC (permalink / raw)
To: systemtap
--
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|systemtap at sources dot |fche at redhat dot com
|redhat dot com |
Status|NEW |ASSIGNED
http://sourceware.org/bugzilla/show_bug.cgi?id=10762
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug translator/10762] turn off userspace prologue heuristics for recent gcc
2009-10-13 0:12 [Bug translator/10762] New: " fche at redhat dot com
2009-10-16 20:00 ` [Bug translator/10762] " fche at redhat dot com
2009-10-16 20:24 ` fche at redhat dot com
@ 2009-10-16 21:18 ` fche at redhat dot com
2009-12-21 15:18 ` fche at redhat dot com
` (2 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: fche at redhat dot com @ 2009-10-16 21:18 UTC (permalink / raw)
To: systemtap
------- Additional Comments From fche at redhat dot com 2009-10-16 21:17 -------
Parameters at the function entry seem to hit upon an existing uprobes
shortcoming: using pt_regs as it arrived from the kernel trap handler
instead of the utrace regset. In other words, our pt_regs currently
get corrupt values (specifically for %rsp and sometimes %rax), which
precludes correct location.
So we're blocked on bug #10601.
% cat foo.c
int foo(char *p) { while(*p++); return 0; }
int main() {
foo("hello");
}
% gcc -g -fno-inline -fomit-frmae-pointer -O3 foo.c
Probing function("foo").call vs. statement("foo") exposes the various problems
on i686. function("foo").call will be called five times since the prologue
heuristics will fire and place the probe at the head of the loop.
On the other hand, statement("foo") will be called once, but print_regs()
confirms that some incoming register values are wrong (compare to a gdb
breakpoint & info regs at the same address).
--
What |Removed |Added
----------------------------------------------------------------------------
BugsThisDependsOn| |10601
AssignedTo|fche at redhat dot com |systemtap at sources dot
| |redhat dot com
http://sourceware.org/bugzilla/show_bug.cgi?id=10762
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug translator/10762] turn off userspace prologue heuristics for recent gcc
2009-10-13 0:12 [Bug translator/10762] New: " fche at redhat dot com
` (2 preceding siblings ...)
2009-10-16 21:18 ` fche at redhat dot com
@ 2009-12-21 15:18 ` fche at redhat dot com
2009-12-21 19:22 ` fche at redhat dot com
2010-01-18 20:18 ` fche at redhat dot com
5 siblings, 0 replies; 7+ messages in thread
From: fche at redhat dot com @ 2009-12-21 15:18 UTC (permalink / raw)
To: systemtap
------- Additional Comments From fche at redhat dot com 2009-12-21 15:18 -------
(In reply to comment #3)
> On the other hand, statement("foo") will be called once, but print_regs()
> confirms that some incoming register values are wrong (compare to a gdb
> breakpoint & info regs at the same address).
With the parts of bug #10601 already committed, .statement("foo") produces
correct results.
--
http://sourceware.org/bugzilla/show_bug.cgi?id=10762
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug translator/10762] turn off userspace prologue heuristics for recent gcc
2009-10-13 0:12 [Bug translator/10762] New: " fche at redhat dot com
` (3 preceding siblings ...)
2009-12-21 15:18 ` fche at redhat dot com
@ 2009-12-21 19:22 ` fche at redhat dot com
2010-01-18 20:18 ` fche at redhat dot com
5 siblings, 0 replies; 7+ messages in thread
From: fche at redhat dot com @ 2009-12-21 19:22 UTC (permalink / raw)
To: systemtap
--
Bug 10762 depends on bug 10601, which changed state.
Bug 10601 Summary: user-space deref/registers in loc2c
http://sourceware.org/bugzilla/show_bug.cgi?id=10601
What |Old Value |New Value
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
http://sourceware.org/bugzilla/show_bug.cgi?id=10762
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug translator/10762] turn off userspace prologue heuristics for recent gcc
2009-10-13 0:12 [Bug translator/10762] New: " fche at redhat dot com
` (4 preceding siblings ...)
2009-12-21 19:22 ` fche at redhat dot com
@ 2010-01-18 20:18 ` fche at redhat dot com
5 siblings, 0 replies; 7+ messages in thread
From: fche at redhat dot com @ 2010-01-18 20:18 UTC (permalink / raw)
To: systemtap
--
What |Removed |Added
----------------------------------------------------------------------------
OtherBugsDependingO| |11179
nThis| |
http://sourceware.org/bugzilla/show_bug.cgi?id=10762
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2012-06-16 16:12 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <bug-10762-6586@http.sourceware.org/bugzilla/>
2012-06-16 16:12 ` [Bug translator/10762] turn off userspace prologue heuristics for recent gcc fche at redhat dot com
2009-10-13 0:12 [Bug translator/10762] New: " fche at redhat dot com
2009-10-16 20:00 ` [Bug translator/10762] " fche at redhat dot com
2009-10-16 20:24 ` fche at redhat dot com
2009-10-16 21:18 ` fche at redhat dot com
2009-12-21 15:18 ` fche at redhat dot com
2009-12-21 19:22 ` fche at redhat dot com
2010-01-18 20:18 ` fche at redhat dot com
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).