On 05/21/2012 10:42 AM, Corinna Vinschen wrote: >> The crash occurs after echo exited, so bash wakes up from the wait4 >> call. However, the problem is that the crash does not occur in Cygwin, >> but in bash itself. >> >> 147 350775 [main] bash 3548 wait4: 2320 = wait4(-1, 0x0, 0, 0x0) >> --- Process 3548, exception C0000005 at 00422B0A >> >> Eric, can you reproduce this and see where it happens? I'm pretty sure >> it's a bug in Cygwin, not in bash, but it would be interesting to learn >> what bash did at the time the crash happened. > > Incidentally I built bash without -O2 option for better debugging and > the problem vanished. Then I built bash again with default optimization > and the crash still didn't occur. I built from the latest bash src > package.4.1.10-4 using cygport.
Uggh. This sounds familiar to another bash bug that I investigated some time ago, where bash was abusing longjmp() and miscompiled under -O2 but compiled correctly at -O0 due to the undefined behavior from that abuse, but I just verified that my patch from back then is still present in my latest build of bash for cygwin. I'll have to find more time to look into this. https://lists.gnu.org/archive/html/bug-bash/2011-02/msg00060.html -- Eric Blake ebl...@redhat.com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature