public inbox for systemtap@sourceware.org
 help / color / mirror / Atom feed
* [Bug translator/14000] New: crosscompiled uprobe target filename doesn't have the sysroot path removed.
@ 2012-04-19 15:22 adrian.m.negreanu at intel dot com
  2012-04-21  6:34 ` [Bug translator/14000] " adrian.m.negreanu at intel dot com
  2012-04-24 20:48 ` fche at redhat dot com
  0 siblings, 2 replies; 3+ messages in thread
From: adrian.m.negreanu at intel dot com @ 2012-04-19 15:22 UTC (permalink / raw)
  To: systemtap

http://sourceware.org/bugzilla/show_bug.cgi?id=14000

             Bug #: 14000
           Summary: crosscompiled uprobe target filename doesn't have the
                    sysroot path removed.
           Product: systemtap
           Version: unspecified
            Status: NEW
          Severity: normal
          Priority: P2
         Component: translator
        AssignedTo: systemtap@sourceware.org
        ReportedBy: adrian.m.negreanu@intel.com
    Classification: Unclassified


Created attachment 6351
  --> http://sourceware.org/bugzilla/attachment.cgi?id=6351
jni.stp

I'm using the jni.stp script(attached) to use a systemtap marker from
libdvm.so.

The stap command I use is:
 sudo env PATH=$PATH stap -k -a i386 --sysroot=$DIRECTORY_WITH_I386_BINS -r
$DIRECTORY_WITH_I386_BINS/kernel -B CROSS_COMPILE=i686-unknown-linux- -m jni
jni.ko

In the generated /tmp/stap*/jni_src.c, where stap_inode_uprobe_targets is
initialized,
you can see that the whole path($DIRECTORY_WITH_I386_BINS) is used, and not the
one in the jni.stp:process()

   504 static struct stapiu_target stap_inode_uprobe_targets[] = {
   505   { .finder={ .mmap_callback=&stapiu_mmap_found, 
.munmap_callback=&stapiu_munmap_found,  .callback=&stapiu_process_munmap, }
   506   , .filename="/home/adrian/out/symbols/system/lib/libdvm.so", },
   507 };

As a fix, I used this:

diff --git a/tapsets.cxx b/tapsets.cxx
index 97cedc0..97db37c 100644
--- a/tapsets.cxx
+++ b/tapsets.cxx
@@ -6187,7 +6187,7 @@ sdt_query::handle_probe_entry()
            section = ".absolute";

          uprobe_derived_probe* p =
-           new uprobe_derived_probe ("", "", 0, q.module_val, section,
+           new uprobe_derived_probe ("", "", 0,
path_remove_sysroot(sess,q.module_val), section,
                                      q.statement_num_val, reloc_addr, q, 0);
          p->saveargs (arg_count);
          results.push_back (p);

-- 
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] 3+ messages in thread

* [Bug translator/14000] crosscompiled uprobe target filename doesn't have the sysroot path removed.
  2012-04-19 15:22 [Bug translator/14000] New: crosscompiled uprobe target filename doesn't have the sysroot path removed adrian.m.negreanu at intel dot com
@ 2012-04-21  6:34 ` adrian.m.negreanu at intel dot com
  2012-04-24 20:48 ` fche at redhat dot com
  1 sibling, 0 replies; 3+ messages in thread
From: adrian.m.negreanu at intel dot com @ 2012-04-21  6:34 UTC (permalink / raw)
  To: systemtap

http://sourceware.org/bugzilla/show_bug.cgi?id=14000

--- Comment #1 from Negreanu Adrian <adrian.m.negreanu at intel dot com> 2012-04-21 06:32:43 UTC ---
Also in translate.cxx


diff --git a/translate.cxx b/translate.cxx
index e800393..6c52d02 100644
--- a/translate.cxx
+++ b/translate.cxx
@@ -5984,7 +5984,7 @@ dump_unwindsym_cxt (Dwfl_Module *m,

   c->output << "static struct _stp_module _stp_module_" << stpmod_idx << " =
{\n";
   c->output << ".name = " << lex_cast_qstring (mainname) << ", \n";
-  c->output << ".path = " << lex_cast_qstring (mainpath) << ",\n";
+  c->output << ".path = " <<  path_remove_sysroot(c->session,lex_cast_qstring
(mainpath)) << ",\n";
   c->output << ".eh_frame_addr = 0x" << hex << eh_addr << dec << ", \n";
   c->output << ".unwind_hdr_addr = 0x" << hex << eh_frame_hdr_addr
            << dec << ", \n";

-- 
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] 3+ messages in thread

* [Bug translator/14000] crosscompiled uprobe target filename doesn't have the sysroot path removed.
  2012-04-19 15:22 [Bug translator/14000] New: crosscompiled uprobe target filename doesn't have the sysroot path removed adrian.m.negreanu at intel dot com
  2012-04-21  6:34 ` [Bug translator/14000] " adrian.m.negreanu at intel dot com
@ 2012-04-24 20:48 ` fche at redhat dot com
  1 sibling, 0 replies; 3+ messages in thread
From: fche at redhat dot com @ 2012-04-24 20:48 UTC (permalink / raw)
  To: systemtap

http://sourceware.org/bugzilla/show_bug.cgi?id=14000

Frank Ch. Eigler <fche at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |fche at redhat dot com
         Resolution|                            |FIXED

--- Comment #2 from Frank Ch. Eigler <fche at redhat dot com> 2012-04-24 20:48:37 UTC ---
commit 65e2141
though expecting some more bugs under that rock

-- 
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] 3+ messages in thread

end of thread, other threads:[~2012-04-24 20:48 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-04-19 15:22 [Bug translator/14000] New: crosscompiled uprobe target filename doesn't have the sysroot path removed adrian.m.negreanu at intel dot com
2012-04-21  6:34 ` [Bug translator/14000] " adrian.m.negreanu at intel dot com
2012-04-24 20:48 ` 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).