public inbox for gdb@sourceware.org
 help / color / mirror / Atom feed
* Stack "signal handler called"
@ 2004-09-30  9:47 Fabian Cenedese
  2004-10-03 18:44 ` Daniel Jacobowitz
  0 siblings, 1 reply; 3+ messages in thread
From: Fabian Cenedese @ 2004-09-30  9:47 UTC (permalink / raw)
  To: gdb

Hi

I tried to examine a target where a thread had crashed. I issued bt
and got only one frame, somewhere in memcpy.c. For the second
frame gdb only printed <signal handler called>. What does this mean?
I found the string in stack.c but I couldn't make out the meaning.
Does it mean that the call stack was destroyed? Some invalid
addresses in the call stack?

Thanks

bye  Fabi


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Stack "signal handler called"
  2004-09-30  9:47 Stack "signal handler called" Fabian Cenedese
@ 2004-10-03 18:44 ` Daniel Jacobowitz
  2004-10-04 13:12   ` Fabian Cenedese
  0 siblings, 1 reply; 3+ messages in thread
From: Daniel Jacobowitz @ 2004-10-03 18:44 UTC (permalink / raw)
  To: Fabian Cenedese; +Cc: gdb

On Thu, Sep 30, 2004 at 11:45:46AM +0200, Fabian Cenedese wrote:
> Hi
> 
> I tried to examine a target where a thread had crashed. I issued bt
> and got only one frame, somewhere in memcpy.c. For the second
> frame gdb only printed <signal handler called>. What does this mean?
> I found the string in stack.c but I couldn't make out the meaning.
> Does it mean that the call stack was destroyed? Some invalid
> addresses in the call stack?

It means that GDB thinks that a signal handler has been invoked, and
that the frames above it are in the signal handler context.  If that's
incorrect, you've found a bug in GDB.

(You mentioned threads.  It may be that the application is placing
thread stacks in such a way that GDB is confused...)

-- 
Daniel Jacobowitz

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Stack "signal handler called"
  2004-10-03 18:44 ` Daniel Jacobowitz
@ 2004-10-04 13:12   ` Fabian Cenedese
  0 siblings, 0 replies; 3+ messages in thread
From: Fabian Cenedese @ 2004-10-04 13:12 UTC (permalink / raw)
  To: gdb


>> I tried to examine a target where a thread had crashed. I issued bt
>> and got only one frame, somewhere in memcpy.c. For the second
>> frame gdb only printed <signal handler called>. What does this mean?
>> I found the string in stack.c but I couldn't make out the meaning.
>> Does it mean that the call stack was destroyed? Some invalid
>> addresses in the call stack?
>
>It means that GDB thinks that a signal handler has been invoked, and
>that the frames above it are in the signal handler context.  If that's
>incorrect, you've found a bug in GDB.
>
>(You mentioned threads.  It may be that the application is placing
>thread stacks in such a way that GDB is confused...)

There are some possibilities for errors on our side. The callstack could
be made up wrong in case of a trap, and our debugger could also read
and interpret wrong data. But it usually works fine. As it didn't work
in this case I tried if gdb could perform better. As it didn't get further
either I'll assume for now that there really was an error in the call stack.
More investigations didn't reveal anything.

Thanks

bye  Fabi


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2004-10-04  9:00 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-09-30  9:47 Stack "signal handler called" Fabian Cenedese
2004-10-03 18:44 ` Daniel Jacobowitz
2004-10-04 13:12   ` Fabian Cenedese

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).