From: Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>
To: gdb@sourceware.org
Subject: info files' Entry point on ppc64
Date: Wed, 08 Sep 2010 16:37:00 -0000 [thread overview]
Message-ID: <4C87BBA7.7090008@linux.vnet.ibm.com> (raw)
Hi,
checking the log from break-interp.exp testcase on ppc64, noticed that gdb is not properly setting a break at the entry point:
info files
Unix child process:
Using the running image of child process 22491.
While running this, GDB does not access memory from...
Local exec file:
`/home/emachado/build-7.2/gdb/testsuite/gdb.base/break-interp-BINprelinkNOdebugNOpieYES', file type elf64-powerpc.
Entry point: 0x251c11e0
0x00000000251b0200 - 0x00000000251b0250 @ 0x00000200 is .interp
...skipping...
(gdb) PASS: gdb.base/break-interp.exp: LDprelinkNOdebugNO: BINprelinkNOdebugNOpieYES: symbol-less: info files
break *0x251c11e0
Breakpoint 2 at 0x251c11e0
(gdb) PASS: gdb.base/break-interp.exp: LDprelinkNOdebugNO: BINprelinkNOdebugNOpieYES: symbol-less: break at entry point
continue
Continuing.
Reading symbols from /home/emachado/build-7.2/gdb/testsuite/gdb.base/break-interp-BINprelinkNOdebugNOpieYES.d/break-interp.so...done.
Loaded symbols for /home/emachado/build-7.2/gdb/testsuite/gdb.base/break-interp-BINprelinkNOdebugNOpieYES.d/break-interp.so
Reading symbols from /home/emachado/build-7.2/gdb/testsuite/gdb.base/break-interp-BINprelinkNOdebugNOpieYES.d/libm.so.6...(no debugging symbols found)...done.
Loaded symbols for /home/emachado/build-7.2/gdb/testsuite/gdb.base/break-interp-BINprelinkNOdebugNOpieYES.d/libm.so.6
Reading symbols from /home/emachado/build-7.2/gdb/testsuite/gdb.base/break-interp-BINprelinkNOdebugNOpieYES.d/libc.so.6...(no debugging symbols found)...done.
Loaded symbols for /home/emachado/build-7.2/gdb/testsuite/gdb.base/break-interp-BINprelinkNOdebugNOpieYES.d/libc.so.6
Program received signal SIGSEGV, Segmentation fault.
0x7d821008251b0a90 in ?? ()
(gdb) FAIL: gdb.base/break-interp.exp: LDprelinkNOdebugNO: BINprelinkNOdebugNOpieYES: symbol-less: entry point reached
In fact, the entry point address from 'info files' points to the function descriptor structure existing on ppc64 arch. If we check the first doubleword of this structure, then we have the correct entry point address. I've also noticed that ppc-linux-tdep.c implements gdbarch_convert_from_func_ptr_addr function for ppc64, so I was wondering if adding support for adjust_breakpoint_address on ppc64 wouldn't be a solution for this case. Also, for what it's worth, I checked the entry point address using readelf and it reports the same as 'info files' does.
Any suggestions are welcome.
Thanks,
--
Edjunior Barbosa Machado
IBM Linux Technology Center
next reply other threads:[~2010-09-08 16:37 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-09-08 16:37 Edjunior Barbosa Machado [this message]
2010-09-09 14:05 ` [patch] [ppc64] testsuite: break-interp.exp [Re: info files' Entry point on ppc64] Jan Kratochvil
2010-09-10 14:55 ` Edjunior Barbosa Machado
2010-09-10 15:51 ` Jan Kratochvil
[not found] ` <20100909140513.GA20677__33509.653612464$1284041144$gmane$org@host1.dyn.jankratochvil.net>
2010-09-09 19:56 ` Tom Tromey
2010-09-09 20:01 ` Jan Kratochvil
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=4C87BBA7.7090008@linux.vnet.ibm.com \
--to=emachado@linux.vnet.ibm.com \
--cc=gdb@sourceware.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
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