This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
Fwd: gdb on Cygwin cannot give correct call stacks for segment faults
- From: Pan ruochen <panruochen at gmail dot com>
- To: gdb at sourceware dot org
- Date: Mon, 28 Oct 2013 12:00:17 +0800
- Subject: Fwd: gdb on Cygwin cannot give correct call stacks for segment faults
- Authentication-results: sourceware.org; auth=none
- References: <CALX7UOgBuWzx_8dO+Aev=1MfLLSma6CQdcQqi6iURCA1HR7snA at mail dot gmail dot com>
Hi All,
I find that my gdb on Cygwin cannot dump correct call stacks while
segment faults arise.
Test code is as follows:
--------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
void foo()
{
FILE * volatile dev =NULL;
fprintf(dev, "Hello World!\n");
}
int main()
{
foo();
return 0;
}
--------------------------------------------------------------
And backtrace information is as follows:
Program received signal SIGSEGV, Segmentation fault.
0x61138b61 in _fwrite_r () from /usr/bin/cygwin1.dll
(gdb) backtrace
#0 0x61138b61 in _fwrite_r () from /usr/bin/cygwin1.dll
#1 0x76bd1194 in WaitForSingleObjectEx ()
from /cygdrive/c/windows/syswow64/kernel32.dll
#2 0x76bd1148 in WaitForSingleObject ()
from /cygdrive/c/windows/syswow64/kernel32.dll
#3 0x610dd558 in sig_send(_pinfo*, siginfo_t&, _cygtls*) ()
from /usr/bin/cygwin1.dll
#4 0x610303b4 in exception::handle(_EXCEPTION_RECORD*,
_exception_list*, _CONTEXT*, void*) () from /usr/bin/cygwin1.dll
#5 0x77a5b499 in ntdll!LdrRemoveLoadAsDataTable ()
from /cygdrive/c/windows/system32/ntdll.dll
#6 0x0028a6ac in ?? ()
#7 0x77a5b46b in ntdll!LdrRemoveLoadAsDataTable ()
from /cygdrive/c/windows/system32/ntdll.dll
#8 0x0028a6ac in ?? ()
#9 0x77a10133 in ntdll!KiUserExceptionDispatcher ()
from /cygdrive/c/windows/system32/ntdll.dll
#10 0x0028a6ac in ?? ()
#11 0x61138c75 in fwrite () from /usr/bin/cygwin1.dll
#12 0x610d75e5 in _sigfe () from /usr/bin/cygwin1.dll
#13 0x0000000d in ?? ()
#14 0x00000000 in ?? ()
does not give any useful clues where the segment faults arise.
So what is wrong?
-- BR, Ruochen