* [Bug translator/13143] New: process.library("libfoo.so").function(ADDRESS).call/return fail to resolve
@ 2011-08-30 15:02 brolley at redhat dot com
2011-08-30 15:17 ` [Bug translator/13143] " brolley at redhat dot com
` (4 more replies)
0 siblings, 5 replies; 6+ messages in thread
From: brolley at redhat dot com @ 2011-08-30 15:02 UTC (permalink / raw)
To: systemtap
http://sourceware.org/bugzilla/show_bug.cgi?id=13143
Bug #: 13143
Summary: process.library("libfoo.so").function(ADDRESS).call/re
turn fail to resolve
Product: systemtap
Version: unspecified
Status: NEW
Severity: normal
Priority: P2
Component: translator
AssignedTo: systemtap@sourceware.org
ReportedBy: brolley@redhat.com
Classification: Unclassified
The test
stap -p2 -e 'probe process.library("libfoo.so").function(ADDR).call {exit
();}'
where ADDR is the address of the function libfoofunc as obtained from objdump
fails to resolve. The same problem occurs for the .return variant. The probe
resolves if the call/return is omitted. The probe also resolves if an sdt
marker is added to libfoofunc similar to the one in ilibfoofunc.
--
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug translator/13143] process.library("libfoo.so").function(ADDRESS).call/return fail to resolve
2011-08-30 15:02 [Bug translator/13143] New: process.library("libfoo.so").function(ADDRESS).call/return fail to resolve brolley at redhat dot com
@ 2011-08-30 15:17 ` brolley at redhat dot com
2011-08-30 19:41 ` scox at redhat dot com
` (3 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: brolley at redhat dot com @ 2011-08-30 15:17 UTC (permalink / raw)
To: systemtap
http://sourceware.org/bugzilla/show_bug.cgi?id=13143
--- Comment #1 from Dave Brolley <brolley at redhat dot com> 2011-08-30 15:16:54 UTC ---
Additional information: This test is from
testsuite/systemtap.unprivileged/unprivileged_all.exp
Details on building the application foo and the library libfoo can be obtained
there. Also the stap invocation should contain -c ./foo as in
stap -p2 \
-e 'probe process.library("libfoo.so").function(ADDR).call {exit();}' \
-c ./foo
--
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug translator/13143] process.library("libfoo.so").function(ADDRESS).call/return fail to resolve
2011-08-30 15:02 [Bug translator/13143] New: process.library("libfoo.so").function(ADDRESS).call/return fail to resolve brolley at redhat dot com
2011-08-30 15:17 ` [Bug translator/13143] " brolley at redhat dot com
@ 2011-08-30 19:41 ` scox at redhat dot com
2011-08-30 19:43 ` scox at redhat dot com
` (2 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: scox at redhat dot com @ 2011-08-30 19:41 UTC (permalink / raw)
To: systemtap
http://sourceware.org/bugzilla/show_bug.cgi?id=13143
Stan Cox <scox at redhat dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |scox at redhat dot com
--- Comment #2 from Stan Cox <scox at redhat dot com> 2011-08-30 19:41:15 UTC ---
Looks like it is working as designed.
probe process ("libfoo.so").library("libfoo.so").function(0x55e).call
maps to and seems to behave identical to:
probe process ("libfoo.so").function(0x55e).call
query_addr has this check.
if ((tag == DW_TAG_subprogram && !q->has_inline) ||
(tag == DW_TAG_inlined_subroutine &&
!q->has_call && !q->has_return))
which in the above case is checking
tag == DW_TAG_inlined_subroutine
q->has_call == true
and thus it fails.
For the case where a probe is added to libfoofunc then the check becomes
tag == DW_TAG_subprogram
q->has_inline == true
--
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug translator/13143] process.library("libfoo.so").function(ADDRESS).call/return fail to resolve
2011-08-30 15:02 [Bug translator/13143] New: process.library("libfoo.so").function(ADDRESS).call/return fail to resolve brolley at redhat dot com
2011-08-30 15:17 ` [Bug translator/13143] " brolley at redhat dot com
2011-08-30 19:41 ` scox at redhat dot com
@ 2011-08-30 19:43 ` scox at redhat dot com
2011-08-30 19:52 ` brolley at redhat dot com
2011-09-06 16:37 ` brolley at redhat dot com
4 siblings, 0 replies; 6+ messages in thread
From: scox at redhat dot com @ 2011-08-30 19:43 UTC (permalink / raw)
To: systemtap
http://sourceware.org/bugzilla/show_bug.cgi?id=13143
--- Comment #3 from Stan Cox <scox at redhat dot com> 2011-08-30 19:42:52 UTC ---
ah, last line should have read:
q->has_inline == false
--
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug translator/13143] process.library("libfoo.so").function(ADDRESS).call/return fail to resolve
2011-08-30 15:02 [Bug translator/13143] New: process.library("libfoo.so").function(ADDRESS).call/return fail to resolve brolley at redhat dot com
` (2 preceding siblings ...)
2011-08-30 19:43 ` scox at redhat dot com
@ 2011-08-30 19:52 ` brolley at redhat dot com
2011-09-06 16:37 ` brolley at redhat dot com
4 siblings, 0 replies; 6+ messages in thread
From: brolley at redhat dot com @ 2011-08-30 19:52 UTC (permalink / raw)
To: systemtap
http://sourceware.org/bugzilla/show_bug.cgi?id=13143
--- Comment #4 from Dave Brolley <brolley at redhat dot com> 2011-08-30 19:51:29 UTC ---
(In reply to comment #2)
> Looks like it is working as designed.
>
> probe process ("libfoo.so").library("libfoo.so").function(0x55e).call
> maps to and seems to behave identical to:
> probe process ("libfoo.so").function(0x55e).call
>
> query_addr has this check.
> if ((tag == DW_TAG_subprogram && !q->has_inline) ||
> (tag == DW_TAG_inlined_subroutine &&
> !q->has_call && !q->has_return))
> which in the above case is checking
> tag == DW_TAG_inlined_subroutine
> q->has_call == true
>
> and thus it fails.
>
> For the case where a probe is added to libfoofunc then the check becomes
> tag == DW_TAG_subprogram
> q->has_inline == true
So are you saying that it's not resolving because the function libfoofunc was
inlined (because it was empty)?
--
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug translator/13143] process.library("libfoo.so").function(ADDRESS).call/return fail to resolve
2011-08-30 15:02 [Bug translator/13143] New: process.library("libfoo.so").function(ADDRESS).call/return fail to resolve brolley at redhat dot com
` (3 preceding siblings ...)
2011-08-30 19:52 ` brolley at redhat dot com
@ 2011-09-06 16:37 ` brolley at redhat dot com
4 siblings, 0 replies; 6+ messages in thread
From: brolley at redhat dot com @ 2011-09-06 16:37 UTC (permalink / raw)
To: systemtap
http://sourceware.org/bugzilla/show_bug.cgi?id=13143
Dave Brolley <brolley at redhat dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |INVALID
--- Comment #5 from Dave Brolley <brolley at redhat dot com> 2011-09-06 16:36:10 UTC ---
commit 04676f97f1559dec2ed2ef46fa79a8db17426939
provides updates to the test suite. The case application library was changed so
that the function libfoofunc is not inlined and the test harness was changed to
expect the probe to be resolved correctly.
--
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2011-09-06 16:37 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-08-30 15:02 [Bug translator/13143] New: process.library("libfoo.so").function(ADDRESS).call/return fail to resolve brolley at redhat dot com
2011-08-30 15:17 ` [Bug translator/13143] " brolley at redhat dot com
2011-08-30 19:41 ` scox at redhat dot com
2011-08-30 19:43 ` scox at redhat dot com
2011-08-30 19:52 ` brolley at redhat dot com
2011-09-06 16:37 ` brolley 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).