From: Arnaldo Carvalho de Melo <acme-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: "Diego \'Flameeyes\' Pettenò"
<flameeyes-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: dwarves-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: pfunct crash on libSDL
Date: Mon, 10 Nov 2008 13:08:01 -0200
Message-ID: <20081110150801.GA10009@ghostprotocols.net> (raw)
In-Reply-To: <m21vxkk8gm.fsf-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Em Sun, Nov 09, 2008 at 08:25:29PM +0100, Diego 'Flameeyes' Pettenò escreveu:
>
> Hi,
>
> at http://www.flameeyes.eu/tmp/dwarves-crash-20081109.tar.bz2 I've
> uploaded a libSDL compiled on my system that crashes pfunct, both with
> -l and with -f some_function.
>
> The funny thing is that gdb is unable to provide me a backtrace ...
>
> This is with both an old git copy I had and the latest newest git I can
> fetch today.
Strange:
[acme@doppio pahole]$ cat .git/refs/heads/master
bcf1c15d8bc8cfe2ce0977d249d49268dfcebaf1
acme@doppio pahole]$ pfunct -TVilf CheckMounts tmp/usr/lib/debug/usr/lib64/libSDL-1.2.so.0.11.2.debug
/* <91a61> ./src/cdrom/linux/SDL_syscdrom.c:188 */
void CheckMounts(const char * mtab);
{ /* low_pc=0x49ae0 */
FILE * mntfp; // 189
struct mntent * mntent; // 190
struct stat stbuf; // 191
{
char * tmp; // 195
char * mnt_type; // 196
size_t mnt_type_len; // 197
char * mnt_dev; // 198
size_t mnt_dev_len; // 199
{ /* CheckMounts+0xe1 */
size_t __s1_len; // 218
size_t __s2_len; // 218
} /* lexblock size=15 */
{
size_t __s1_len; // 242
size_t __s2_len; // 242
} /* lexblock size=0 */
} /* lexblock size=0 */
}/* size: 474, variables: 3 */
acme@doppio pahole]$ ldd `which pfunct`
linux-vdso.so.1 => (0x00007fff741fe000)
libdwarves.so.1 => /home/acme/git/pahole/build/libdwarves.so.1 (0x0000000000110000)
libdwarves_emit.so.1 => /home/acme/git/pahole/build/libdwarves_emit.so.1 (0x0000000000604000)
libz.so.1 => /lib64/libz.so.1 (0x000000371d000000)
libdw.so.1 => /usr/lib64/libdw.so.1 (0x000000371c400000)
libelf.so.1 => /usr/lib64/libelf.so.1 (0x000000371d800000)
libc.so.6 => /lib64/libc.so.6 (0x000000371c000000)
libdl.so.2 => /lib64/libdl.so.2 (0x000000371c800000)
/lib64/ld-linux-x86-64.so.2 (0x000000371bc00000)
[acme@doppio pahole]$
And I'm using elfutils 0.137 on this machine.
Humm, I see, its the other file in this tarball, the one without
debugging info, that makes the CTF code crash in pfunct, I'll fix that,
but please use the file with .debug suffix for now, its there that the
DWARF info is anyway :-)
Ahm and the backtrace is this:
(gdb) bt
#0 0x000000371c0f33a1 in ?? () from /lib64/libc.so.6
#1 0x000000371c0f38e4 in argp_parse () from /lib64/libc.so.6
#2 0x000000000011d5cf in ctf__load (self=0x604010, argp=0x603360, argc=4, argv=0x7fffffffe158) at /home/acme/git/pahole/ctf_loader.c:797
#3 0x000000000011b5b4 in cus__loadfl (self=0x604010, argp=0x603360, argc=4, argv=0x7fffffffe158) at /home/acme/git/pahole/dwarves.c:2584
#4 0x0000000000402044 in main (argc=4, argv=0x7fffffffe158) at /home/acme/git/pahole/pfunct.c:499
It tries to read the DWARF info, there is none, so it tries to find CTF
data, but then hits a bug.
- Arnaldo
--
To unsubscribe from this list: send the line "unsubscribe dwarves" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply index
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-11-09 19:25 Diego 'Flameeyes' Pettenò
[not found] ` <m21vxkk8gm.fsf-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2008-11-10 15:08 ` Arnaldo Carvalho de Melo [this message]
2008-11-10 15:57 ` Diego 'Flameeyes' Pettenò
[not found] ` <m2wsfbineo.fsf-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2008-11-10 16:12 ` Arnaldo Carvalho de Melo
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=20081110150801.GA10009@ghostprotocols.net \
--to=acme-h+wxahxf7alqt0dzr+alfa@public.gmane.org \
--cc=dwarves-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=flameeyes-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
/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
Dwarves Archive on lore.kernel.org
Archives are clonable:
git clone --mirror https://lore.kernel.org/dwarves/0 dwarves/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 dwarves dwarves/ https://lore.kernel.org/dwarves \
dwarves@vger.kernel.org
public-inbox-index dwarves
Example config snippet for mirrors
Newsgroup available over NNTP:
nntp://nntp.lore.kernel.org/org.kernel.vger.dwarves
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git