public inbox for elfutils@sourceware.org
 help / color / mirror / Atom feed
From: Sasha Da Rocha Pinheiro <darochapinhe@wisc.edu>
To: Mark Wielaard <mark@klomp.org>
Cc: "elfutils-devel@sourceware.org" <elfutils-devel@sourceware.org>,
	Ben Woodard <woodard@redhat.com>
Subject: Re: unknown error after dwarf_cfi_addrframe()
Date: Tue, 12 Feb 2019 19:47:00 -0000	[thread overview]
Message-ID: <BN6PR06MB293246A23193A382AFEC4644A6650@BN6PR06MB2932.namprd06.prod.outlook.com> (raw)
In-Reply-To: <BN6PR06MB29322B835ECA93DFEEA81C2AA6650@BN6PR06MB2932.namprd06.prod.outlook.com>

I was using elfutils version 0.175, since we download the lastest.
But after moving back to 0.173, this problem disappeared. So, some update after 0.173 broke this.

Sasha



From: Sasha Da Rocha Pinheiro
Sent: Tuesday, February 12, 2019 12:49 PM
To: Mark Wielaard
Cc: elfutils-devel@sourceware.org; Ben Woodard
Subject: Re: unknown error after dwarf_cfi_addrframe()
 
Since the openbackend() tries to dlopen twice, and in the second turn it succeeds opening one libebl_x86_64.so, I even tried to redirect that symbolic link to a newer version of libebl_x86_64-0.165.so, as seen below.




(gdb) shell

[sasha@zatar] (1)$ locate libebl

/usr/lib/x86_64-linux-gnu/elfutils/libebl_aarch64-0.165.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_aarch64.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_alpha-0.165.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_alpha.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_arm-0.165.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_arm.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_i386-0.165.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_i386.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_ia64-0.165.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_ia64.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_m68k-0.165.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_m68k.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_mips-0.165.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_mips.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_parisc-0.165.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_parisc.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_ppc-0.165.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_ppc.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_ppc64-0.165.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_ppc64.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_s390-0.165.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_s390.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_sh-0.165.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_sh.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_sparc-0.165.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_sparc.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_tilegx-0.165.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_tilegx.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_x86_64-0.165.so

/usr/lib/x86_64-linux-gnu/elfutils/libebl_x86_64.so

[sasha@zatar] (2)$ ls -la /usr/lib/x86_64-linux-gnu/elfutils/libebl_x86_64.so

lrwxrwxrwx 1 root root 70 Feb 12 12:25 /usr/lib/x86_64-linux-gnu/elfutils/libebl_x86_64.so -> /p/paradyn/development/sasha/local/lib/elfutils/libebl_x86_64-0.175.so*

[sasha@zatar] (3)$







Sasha




From: Sasha Da Rocha Pinheiro
Sent: Tuesday, February 12, 2019 12:41 PM
To: Mark Wielaard
Cc: elfutils-devel@sourceware.org; Ben Woodard
Subject: Re: unknown error after dwarf_cfi_addrframe()
 
Below I copy gdb execution from eblopenbackend.c trying to dlopen a dsoname "libebl_x86_64.so".
After that it will try to open again, which find something, but culminates to closing it with (void) dlclose (h);


(gdb) n
328             void *h = dlopen (dsoname, RTLD_LAZY);
(gdb) p dsonmae
No symbol "dsonmae" in current context.
(gdb) p dsoname
$97 = "$ORIGIN/../$LIB/elfutils/libebl_x86_64.so\000\242\001\000\000\000\000\300\317\377\377\377\177\000\000\240N\242\001\000\000\000\000\220\317\377\377\377\177\000\000U\236o\357\377\177\000\000\300\317\377\377\377\177\000\000\240N\242\001\000\000\000\000\000\000\000"
(gdb) show environment $ORIGIN
Environment variable "$ORIGIN" not defined.
(gdb) show environment $LIB
Environment variable "$LIB" not defined.
(gdb) n
329             if (h == NULL)
(gdb) p h
$98 = (void *) 0x0
(gdb) show environment LD_LIBRARY_PATH
LD_LIBRARY_PATH = /p/paradyn/development/sasha/local/lib/elfutils/:/p/paradyn/development/sasha/local/lib/:/p/paradyn/packages/libdwarf/lib:.
(gdb) ls /p/paradyn/development/sasha/local/lib/elfutils/
Undefined command: "ls".  Try "help".
(gdb) shell
[sasha@zatar] (1)$ ls /p/paradyn/development/sasha/local/lib/elfutils/
libebl_aarch64-0.175.so*  libebl_i386-0.175.so*   libebl_ppc64.so@        libebl_sparc-0.175.so*
libebl_aarch64.so@        libebl_i386.so@         libebl_ppc.so@          libebl_sparc.so@
libebl_alpha-0.175.so*    libebl_ia64-0.175.so*   libebl_riscv-0.175.so*  libebl_tilegx-0.175.so*
libebl_alpha.so@          libebl_ia64.so@         libebl_riscv.so@        libebl_tilegx.so@
libebl_arm-0.175.so*      libebl_m68k-0.175.so*   libebl_s390-0.175.so*   libebl_x86_64-0.175.so*
libebl_arm.so@            libebl_m68k.so@         libebl_s390.so@         libebl_x86_64.so@
libebl_bpf-0.175.so*      libebl_ppc-0.175.so*    libebl_sh-0.175.so*
libebl_bpf.so@            libebl_ppc64-0.175.so*  libebl_sh.so@
[sasha@zatar] (2)$ exit
exit
(gdb) frame
#0  openbackend (elf=0x1a24ea0, emulation=0x0, machine=62)
    at /p/paradyn/development/sasha/dyninst/build.dir/elfutils/src/LibElf/libebl/eblopenbackend.c:329
329             if (h == NULL)
(gdb)




From: Sasha Da Rocha Pinheiro
Sent: Tuesday, February 12, 2019 11:57 AM
To: Mark Wielaard
Cc: elfutils-devel@sourceware.org; Ben Woodard
Subject: Re: unknown error after dwarf_cfi_addrframe()
 
Not working even after adding the directory to libebl_*.so to LD_LIBRARY_PATH.
default_abi_cfi is still called returning -1.

Sasha



From: Mark Wielaard <mark@klomp.org>
Sent: Tuesday, February 12, 2019 2:09 AM
To: Sasha Da Rocha Pinheiro
Cc: elfutils-devel@sourceware.org; Ben Woodard
Subject: Re: unknown error after dwarf_cfi_addrframe()
 
On Tue, Feb 12, 2019 at 07:25:28AM +0000, Sasha Da Rocha Pinheiro wrote:
> Oh this is a whole new thing. How have this worked before without those .so? After downloading and compiling elfutils we only copy libdw and libelf.

The backends are only used for architecture specific ELF things.
Most of DWARF can be understood in an architecture independent way.
But CFI does have some arch specific things.

You should really use make install to get a proper installation,
not just copy some files. Otherwise you might indeed miss the
backends, or translations, etc.

Cheers,

Mark

  parent reply	other threads:[~2019-02-12 19:47 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-02-07 22:57 Sasha Da Rocha Pinheiro
2019-02-12  1:15 ` Sasha Da Rocha Pinheiro
2019-02-12  6:47   ` Mark Wielaard
     [not found]     ` <BN6PR06MB293247BE5B8443B3E3EB967BA6650@BN6PR06MB2932.namprd06.prod.outlook.com>
2019-02-12  8:09       ` Mark Wielaard
2019-02-12 17:57         ` Sasha Da Rocha Pinheiro
2019-02-12 18:39           ` Ben Woodard
2019-02-12 18:43             ` Sasha Da Rocha Pinheiro
2019-02-12 18:41           ` Sasha Da Rocha Pinheiro
     [not found]             ` <BN6PR06MB29322B835ECA93DFEEA81C2AA6650@BN6PR06MB2932.namprd06.prod.outlook.com>
2019-02-12 19:47               ` Sasha Da Rocha Pinheiro [this message]
2019-02-12 20:58                 ` Mark Wielaard
2019-02-12 21:39                   ` Sasha Da Rocha Pinheiro
2019-02-12 20:42               ` Mark Wielaard

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=BN6PR06MB293246A23193A382AFEC4644A6650@BN6PR06MB2932.namprd06.prod.outlook.com \
    --to=darochapinhe@wisc.edu \
    --cc=elfutils-devel@sourceware.org \
    --cc=mark@klomp.org \
    --cc=woodard@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).