bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#17753: Cygwin emacs-X11 core dump


From: Eli Zaretskii
Subject: bug#17753: Cygwin emacs-X11 core dump
Date: Mon, 22 Sep 2014 17:48:07 +0300

> Date: Mon, 22 Sep 2014 16:04:41 +0200
> From: Markus Hoenicka <markus.hoenicka@mhoenicka.de>
> Cc: Eli Zaretskii <eliz@gnu.org>, 17753@debbugs.gnu.org
> 
> At 2014-09-22 15:32, Ken Brown was heard to say:
> > On 9/22/2014 3:14 AM, Markus Hoenicka wrote:
> >> $ cygcheck -f /usr/bin/emacs-X11
> >> emacs-X11-24.3.93-3
> > 
> > And do you have the matching version of emacs-debuginfo installed?
> > The lack of information in the backtrace of Thread 1 makes me think
> > that you might not.
> > 
> 
> I think I do:
> 
> $ cygcheck -f /usr/lib/debug/usr/bin/emacs-X11.exe.dbg
> emacs-debuginfo-24.3.93-3
> 
> Also, gdb does not complain about a version mismatch, although the path 
> to the symbols looks a little strange to me (note the // in the middle):
> 
> $ gdb /usr/bin/emacs-X11
> GNU gdb (GDB) 7.8
> [...]
> Reading symbols from /usr/bin/emacs-X11...Reading symbols from 
> /usr/lib/debug//usr/bin/emacs-X11.exe.dbg...done.
> done.

Then something weird is going on here, because the backtrace you
posted omits all the Emacs parts, and leaves only the Cygwin internal
symbols.  Once it gets to the first frame where Emacs code was
supposed to be executed, it bails out claiming the stack is corrupt.

> Fatal error 6: Aborted
> Program received signal SIGABRT, Aborted.
> terminate_due_to_signal (sig=0, backtrace_limit=<optimized out>)
>      at /usr/src/debug/emacs-24.3.93-3/src/emacs.c:381
> 381       exit (1);
> (gdb) info threads
>    Id   Target Id         Frame
>    9    Thread 4188.0x460 0x00000000772712fa in 
> ntdll!ZwWaitForSingleObject ()
>     from /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
>    8    Thread 4188.0xc68 0x00000000772712fa in 
> ntdll!ZwWaitForSingleObject ()
>     from /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
>    6    Thread 4188.0xa84 0x00000000772712fa in 
> ntdll!ZwWaitForSingleObject ()
>     from /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
>    5    Thread 4188.0xd18 0x00000000772715fa in ntdll!ZwDelayExecution ()
>     from /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
>    4    Thread 4188.0x1194 0x000000007727186a in 
> ntdll!ZwWaitForMultipleObjects
>      () from /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
>    3    Thread 4188.0x1074 0x000000007727186a in 
> ntdll!ZwWaitForMultipleObjects
>      () from /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
>    2    Thread 4188.0xcc  0x000007fefd42940d in RaiseException ()
>     from /cygdrive/c/WINDOWS/system32/KERNELBASE.dll
> * 1    Thread 4188.0x1164 terminate_due_to_signal (sig=0,
>      backtrace_limit=<optimized out>)
>      at /usr/src/debug/emacs-24.3.93-3/src/emacs.c:381
> (gdb) thread apply all bt
> 
> Thread 9 (Thread 4188.0x460):
> #0  0x00000000772712fa in ntdll!ZwWaitForSingleObject ()
>     from /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
> #1  0x000007fefd4210dc in WaitForSingleObjectEx ()
>     from /cygdrive/c/WINDOWS/system32/KERNELBASE.dll
> #2  0x0000000180045561 in cygthread::stub (
>      arg=arg@entry=0x1801d0500 <threads+352>)
>      at /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/cygthread.cc:114
> #3  0x000000018004619b in _cygtls::call2 (this=0x425ce00,
>      func=0x1800454d0 <cygthread::stub(void*)>, arg=0x1801d0500 
> <threads+352>,
>      buf=buf@entry=0x425cd50)
>      at /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/cygtls.cc:100
> #4  0x00000001800462f4 in _cygtls::call (func=<optimized out>,
>      arg=<optimized out>)
>      at /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/cygtls.cc:30
> #5  0x00000000770159ed in KERNEL32!BaseThreadInitThunk ()
>     from /cygdrive/c/WINDOWS/system32/kernel32.dll
> #6  0x000000007724c541 in ntdll!RtlUserThreadStart ()
>     from /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
> #7  0x0000000000000000 in ?? ()
> Backtrace stopped: previous frame inner to this frame (corrupt stack?)
> 
> Thread 8 (Thread 4188.0xc68):
> #0  0x00000000772712fa in ntdll!ZwWaitForSingleObject ()
>     from /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
> #1  0x000007fefd4210dc in WaitForSingleObjectEx ()
>     from /cygdrive/c/WINDOWS/system32/KERNELBASE.dll
> #2  0x0000000180045561 in cygthread::stub (
>      arg=arg@entry=0x1801d04a8 <threads+264>)
>      at /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/cygthread.cc:114
> #3  0x000000018004619b in _cygtls::call2 (this=0x3e5ce00,
>      func=0x1800454d0 <cygthread::stub(void*)>, arg=0x1801d04a8 
> <threads+264>,
>      buf=buf@entry=0x3e5cd50)
>      at /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/cygtls.cc:100
> #4  0x00000001800462f4 in _cygtls::call (func=<optimized out>,
>      arg=<optimized out>)
>      at /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/cygtls.cc:30
> #5  0x00000000770159ed in KERNEL32!BaseThreadInitThunk ()
>     from /cygdrive/c/WINDOWS/system32/kernel32.dll
> #6  0x000000007724c541 in ntdll!RtlUserThreadStart ()
>     from /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
> #7  0x0000000000000000 in ?? ()
> Backtrace stopped: previous frame inner to this frame (corrupt stack?)
> 
> Thread 6 (Thread 4188.0xa84):
> #0  0x00000000772712fa in ntdll!ZwWaitForSingleObject ()
>     from /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
> #1  0x000007fefd4210dc in WaitForSingleObjectEx ()
>     from /cygdrive/c/WINDOWS/system32/KERNELBASE.dll
> #2  0x000000018013db94 in timer_thread (x=0x365a9d8)
>      at /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/timer.cc:145
> #3  0x0000000180044fc5 in cygthread::callfunc (
>      this=this@entry=0x1801d0450 <threads+176>,
>      issimplestub=issimplestub@entry=false)
>      at /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/cygthread.cc:51
> #4  0x000000018004552a in cygthread::stub (
>      arg=arg@entry=0x1801d0450 <threads+176>)
>      at /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/cygthread.cc:93
> #5  0x000000018004619b in _cygtls::call2 (this=0x365ce00,
>      func=0x1800454d0 <cygthread::stub(void*)>, arg=0x1801d0450 
> <threads+176>,
>      buf=buf@entry=0x365cd50)
>      at /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/cygtls.cc:100
> #6  0x00000001800462f4 in _cygtls::call (func=<optimized out>,
>      arg=<optimized out>)
>      at /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/cygtls.cc:30
> #7  0x00000000770159ed in KERNEL32!BaseThreadInitThunk ()
>     from /cygdrive/c/WINDOWS/system32/kernel32.dll
> #8  0x000000007724c541 in ntdll!RtlUserThreadStart ()
>     from /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
> #9  0x0000000000000000 in ?? ()
> Backtrace stopped: previous frame inner to this frame (corrupt stack?)
> 
> Thread 5 (Thread 4188.0xd18):
> #0  0x00000000772715fa in ntdll!ZwDelayExecution ()
>     from /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
> #1  0x000007fefd421203 in SleepEx ()
>     from /cygdrive/c/WINDOWS/system32/KERNELBASE.dll
> #2  0x000000018010d970 in thread_pipe (arg=0x600061fe0)
>      at /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/select.cc:690
> #3  0x0000000180044fc5 in cygthread::callfunc (
>      this=this@entry=0x1801d03f8 <threads+88>,
>      issimplestub=issimplestub@entry=false)
>      at /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/cygthread.cc:51
> #4  0x000000018004552a in cygthread::stub (
>      arg=arg@entry=0x1801d03f8 <threads+88>)
>      at /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/cygthread.cc:93
> #5  0x000000018004619b in _cygtls::call2 (this=0x325ce00,
>      func=0x1800454d0 <cygthread::stub(void*)>, arg=0x1801d03f8 
> <threads+88>,
>      buf=buf@entry=0x325cd50)
>      at /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/cygtls.cc:100
> #6  0x00000001800462f4 in _cygtls::call (func=<optimized out>,
>      arg=<optimized out>)
>      at /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/cygtls.cc:30
> #7  0x00000000770159ed in KERNEL32!BaseThreadInitThunk ()
>     from /cygdrive/c/WINDOWS/system32/kernel32.dll
> #8  0x000000007724c541 in ntdll!RtlUserThreadStart ()
>     from /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
> #9  0x0000000000000000 in ?? ()
> Backtrace stopped: previous frame inner to this frame (corrupt stack?)
> 
> Thread 4 (Thread 4188.0x1194):
> #0  0x000000007727186a in ntdll!ZwWaitForMultipleObjects ()
>     from /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
> #1  0x000007fefd421430 in KERNELBASE!GetCurrentProcess ()
>     from /cygdrive/c/WINDOWS/system32/KERNELBASE.dll
> #2  0x0000000000000000 in ?? ()
> Backtrace stopped: previous frame inner to this frame (corrupt stack?)
> 
> Thread 3 (Thread 4188.0x1074):
> #0  0x000000007727186a in ntdll!ZwWaitForMultipleObjects ()
>     from /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
> #1  0x000000007723b037 in ntdll!TpIsTimerSet ()
>     from /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
> #2  0x00000000770159ed in KERNEL32!BaseThreadInitThunk ()
>     from /cygdrive/c/WINDOWS/system32/kernel32.dll
> #3  0x000000007724c541 in ntdll!RtlUserThreadStart ()
>     from /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
> #4  0x0000000000000000 in ?? ()
> Backtrace stopped: previous frame inner to this frame (corrupt stack?)
> 
> Thread 2 (Thread 4188.0xcc):
> #0  0x000007fefd42940d in RaiseException ()
>     from /cygdrive/c/WINDOWS/system32/KERNELBASE.dll
> #1  0x000007fefd43aa0d in OutputDebugStringA ()
>     from /cygdrive/c/WINDOWS/system32/KERNELBASE.dll
> 
> #2  0x000000018007119e in _cygtls::signal_debugger 
> (this=this@entry=0x42ce00,
>      si=...) at 
> /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/exceptions.cc:1505
> #3  0x000000018007132e in sigpacket::process (
>      this=this@entry=0x1801e3260 <sigq+1056>)
>      at /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/exceptions.cc:1364
> #4  0x0000000180119952 in wait_sig ()
>      at /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/sigproc.cc:1320
> #5  0x0000000180044fc5 in cygthread::callfunc (
>      this=this@entry=0x1801d03a0 <threads>,
>      issimplestub=issimplestub@entry=false)
>      at /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/cygthread.cc:51
> #6  0x000000018004552a in cygthread::stub (arg=arg@entry=0x1801d03a0 
> <threads>)
>      at /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/cygthread.cc:93
> #7  0x000000018004619b in _cygtls::call2 (this=0x23bce00,
>      func=0x1800454d0 <cygthread::stub(void*)>, arg=0x1801d03a0 
> <threads>,
>      buf=buf@entry=0x23bcd50)
>      at /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/cygtls.cc:100
> #8  0x00000001800462f4 in _cygtls::call (func=<optimized out>,
>      arg=<optimized out>)
>      at /usr/src/debug/cygwin-1.7.32-1/winsup/cygwin/cygtls.cc:30
> #9  0x00000000770159ed in KERNEL32!BaseThreadInitThunk ()
>     from /cygdrive/c/WINDOWS/system32/kernel32.dll
> #10 0x000000007724c541 in ntdll!RtlUserThreadStart ()
>     from /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
> #11 0x0000000000000000 in ?? ()
> Backtrace stopped: previous frame inner to this frame (corrupt stack?)
> 
> Thread 1 (Thread 4188.0x1164):
> #0  terminate_due_to_signal (sig=0, backtrace_limit=<optimized out>)
>      at /usr/src/debug/emacs-24.3.93-3/src/emacs.c:381
> #1  0x0000000000000000 in ?? ()
> Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Could it be that the program switched to some alternate stack?  In
that case, I could understand why it cannot walk the stack below
system levels.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]