This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: zsh: command not found => hangs
On Sun, 28 Aug 2005, Pavel Tsekov wrote:
> Hello,
>
> I did trace this problem an it looks like a race in Cygwin but I may be
> wrong. Here I am providing two backtraces from a debug session - the first
> one shows what happens normally and the second one shows the hang:
[...]
Just as a confirmation that what you see in the debug output is true here
is the return address to which the signal handler must return when zsh
hangs:
(gdb) x $eip
0x10049293 <zhandler+3>: 0x5794458d
(gdb) disass zhandler 0x10049293 + 3
Dump of assembler code from 0x10049290 to 0x10049296:
0x10049290 <zhandler+0>: push %ebp
0x10049291 <zhandler+1>: mov %esp,%ebp
0x10049293 <zhandler+3>: lea 0xffffff94(%ebp),%eax
End of assembler dump.
(gdb) x $esp+4
0x22eb68: 0x6101e498
(gdb) x 0x6101e498
0x6101e498 <_ZN7_cygtls19call_signal_handlerEv+140>: 0xfffc458b
This address points after the `call' instructions which invokes the
signall handler i.e. as if it is a normal call. When everything is ok the
return address is set to the address of sigreturn.
Another thing I noticed is that when the hang occurs the stack pointer
for zhandler lives at a different address which seems strange - again
this may be irrelevant .
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/