This is the mail archive of the cygwin-xfree mailing list for the Cygwin XFree86 project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

XWin.exe segmentation fault on Windows 7


Hi,

I'm trying to help a coworker get Cygwin running on her Windows 7
(64b) machine, but we're seeing a segmentation fault with XWin.exe.
Previous versions of X11 worked fine on this machine, but recently it
has been unable to fork processes.  It's been giving the error "fork:
child -1 - forked process died unexpectedly ...", which is why I've
been trying to upgrade to the most recent version of Cygwin.

Here's a summary of what I've tried today:

-I cleaned up all traces of Cygwin, including all files under the
install directory and all registry keys.

-I Installed the latest version of Cygwin, using setup.exe from
cygwin.com.  I installed the base system plus gcc4, xinit, and
libX11-devel.  No problems with install, and the normal Cygwin
terminal comes up normally.

-the "startx" script won't launch, it gives the following error:
xinit: giving up
xinit: unable to connect to X server" Connection refused
xinit: server error

-It writes to XWin.exe.stackdump (see below).

-As per http://x.cygwin.com/devel/backtrace.html I installed the
tar.bz2 file for version 1.12.3-1 of xorg-server-debuginfo and ran
"gdb --args /usr/bin/XWin -multiwindow".  Here is the output,
unfortunately it seems to be missing symbols for the most important
part (see below).  It's indicating a problem with strcpy() copying
from a NULL source to an address that is out of bounds (presumably
both could cause a segfault), but unfortunately I can't see a line
number or filename for the code that causes this issue.

I tried reinstalling all of the packages, rebooting, and
rebaseall-ing, but none of this has fixed the problem.

Any advice on how to get more debug info?  How hard is it to build
XWin from source?  If it's a minor strcpy() issue it could be a pretty
easy fix.  Any other advice?

Thanks in advance for any help you can offer.

Cheers,
Chris

----------------


Output from XWin.exe.stackdump:
Exception: STATUS_ACCESS_VIOLATION at eip=61129F8B
eax=0028D624 ebx=00000000 ecx=00000000 edx=00000000 esi=0028D624 edi=0028AB5C
ebp=0028A968 esp=0028A95C program=C:\cygwin\bin\XWin.exe, pid 6164, thread main
cs=0023 ds=002B es=002B fs=0053 gs=002B ss=002B
Stack trace:
Frame     Function  Args
0028A968  61129F8B  (0028D624, 00000000, 0028FF14, 771170D5)
0028AA28  6108E2BA  (0028AA58, 611DF23B, 60FE8510, 00000068)
0028AB78  6108EB57  (60FE000C, 00000005, 0028ABC4, 005C2DE9)
0028AB98  61091F56  (005C2DCE, 005C2DCC, 00000000, 00000000)
0028ABF8  610D5F05  (6C340000, 00000001, 0028FD24, 00000002)
0028AC38  00528F43  (00000002, 0028AC60, 800280E8, 8003A441)
0028ACF8  61007535  (00000000, 0028CD78, 61006B20, 00000000)
End of stack trace



$ gdb --args /usr/bin/XWin -multiwindow
GNU gdb (GDB) 7.3.50.20111026-cvs (cygwin-special)
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-cygwin".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/XWin...Reading symbols from
/usr/lib/debug/usr/bin/XWin.exe.dbg...done.
done.
(gdb) r
Starting program: /usr/bin/XWin -multiwindow
[New Thread 6164.0x1424]
[New Thread 6164.0x1380]
      0 [main] XWin 6164 exception::handle: Exception: STATUS_ACCESS_VIOLATION
    454 [main] XWin 6164 open_stackdumpfile: Dumping stack trace to
XWin.exe.stackdump

Program received signal SIGSEGV, Segmentation fault.
strcpy (dst0=0x40010006 <Address 0x40010006 out of bounds>, src0=0x0)
    at /usr/src/debug/cygwin-1.7.16-1/newlib/libc/string/strcpy.c:86
86            while (!DETECTNULL(*aligned_src))
(gdb) bt full
#0  strcpy (dst0=0x40010006 <Address 0x40010006 out of bounds>, src0=0x0)
    at /usr/src/debug/cygwin-1.7.16-1/newlib/libc/string/strcpy.c:86
        dst = 0x40010006 <Address 0x40010006 out of bounds>
        src = 0x0
        aligned_dst = 0x40010006
        aligned_src = 0x28a026
#1  0x751d2ad6 in OutputDebugStringA () from
/cygdrive/c/Windows/syswow64/KERNELBASE.dll
No symbol table info available.
#2  0x40010006 in ?? ()
No symbol table info available.
#3  0x00000000 in ?? ()
No symbol table info available.
(gdb)

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://x.cygwin.com/docs/
FAQ:                   http://x.cygwin.com/docs/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]