Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Liang Cheng <liang.cheng555@gmail.com>
To: Yao Qi <yao@codesourcery.com>
Cc: gdb@sourceware.org
Subject: Re: GDB 7.2 gets SIGSEGV when step into a function in a shared library
Date: Thu, 15 Sep 2011 16:39:00 -0000	[thread overview]
Message-ID: <CAEU25Cbxdzg19W4ooh7HjGrfBK9v=+CptaWabUUQcbk+MQn0-Q@mail.gmail.com> (raw)
In-Reply-To: <4E72241F.5060402@codesourcery.com>

Sorry for not being clear.
Here is the debug session getting SIGSEGV. xa_fun_in_lib is the
function defined in shared library, and its symbols has been found by
gdb.  Step instruction also caused the same issue. The reason that I
attach those disassemble dump is to avoid rounds of ask-give.  Let me
know if disassemble of the piece of code is needed.  Any idea of why
it happens?

thanks

Breakpoint 1, main (argc=1, argv=0xbef25ca4) at vendor/altestavplayback.c:284
284         CheckErr(res);
3: x/i $pc
=> 0x8d12 <main+78>:    ldr     r0, [r7, #52]   ; 0x34
(gdb) n
286         z = xa_fun_in_lib(10);
3: x/i $pc
=> 0x8d18 <main+84>:    mov.w   r0, #10
(gdb) s

Program received signal SIGSEGV, Segmentation fault.
0x00008d22 in main (argc=1, argv=0xbef25ca4) at vendor/altestavplayback.c:286
286         z = xa_fun_in_lib(10);
3: x/i $pc
=> 0x8d22 <main+94>:    str     r3, [r7, #44]   ; 0x2c
(gdb) info address xa_fun_in_lib
Symbol "xa_fun_in_lib(int)" is a function at address 0x800036fc.

On Thu, Sep 15, 2011 at 11:13 AM, Yao Qi <yao@codesourcery.com> wrote:
> On 09/15/2011 12:21 AM, Liang Cheng wrote:
>>
>> Hi,
>>
>> The application and library under debug were built for ARM.  The
>> target is running Android OS,
>> and the host is Linux X86 64.  As long as we try to step into the
>> function xa_fun_in_lib, it would
>> cause segmentation fault in gdb. Same thing happened if step the
>> instructions.
>>
>> Here are the experiments I did for this issue, and some notes.
>>
>
> If you are reporting a problem of gdb, please describe the problem as clear
> as possible.  A clean and simple debug session is helpful for other people
> here to understand what is your problem.  Please don't mix the experiments
> or your work in the problem description.
>
>>
>> So far I am stuck because of no idea why PC gets messed up. Anyone
>> else the similar issue
>> when trying to debug function in library?  And any input to how to
>> investigate gdb/gdbserver side
>> also is appreciated.  (below some other information is dumped).
>>
>
> Due to lack of clear steps you did in gdb, and its output, I have no idea
> what the problem is and how do you get to the problem, except for some wild
> guess,
>
>> (gdb) disassemble /m 0x8d14
>> Dump of assembler code for function main:
>> ....
>> 286         z = xa_fun_in_lib(10);
>> =>  0x00008d18<+84>:    mov.w   r0, #10
>>    0x00008d1c<+88>:    blx     0x8628
>>    0x00008d20<+92>:    mov     r3, r0
>>    0x00008d22<+94>:    str     r3, [r7, #44]   ; 0x2c
>
> How do you get SIGSEGV from here?  I guess you typed `step' try to step into
> xa_fun_in_lib, but get a SIGSEGV afterwards.
>
> Last but not least, as Hui suggested, please try GDB 7.3 release or GDB CVS
> trunk.
>
> --
> Yao (齐尧)
>


  parent reply	other threads:[~2011-09-15 16:39 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-09-14 16:21 Liang Cheng
2011-09-15  5:46 ` Hui Zhu
     [not found] ` <4E72241F.5060402@codesourcery.com>
2011-09-15 16:39   ` Liang Cheng [this message]
2011-09-16 13:55     ` Yao Qi
     [not found]       ` <CAEU25CYOnYAdqO8ZjTVyUFf2uTHRv7OC6WKnFtGKWmjG4cdNgQ@mail.gmail.com>
2011-09-16 20:04         ` Liang Cheng
2011-09-17  1:28           ` Yao Qi
2011-09-19 15:57             ` Liang Cheng
2011-09-19 22:18               ` Liang Cheng
2011-09-20  1:07                 ` Yao Qi

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='CAEU25Cbxdzg19W4ooh7HjGrfBK9v=+CptaWabUUQcbk+MQn0-Q@mail.gmail.com' \
    --to=liang.cheng555@gmail.com \
    --cc=gdb@sourceware.org \
    --cc=yao@codesourcery.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