public inbox for cygwin-xfree@sourceware.org
help / color / mirror / Atom feed
* XWin.exe segmentation fault on Windows 7
@ 2012-08-08  4:51 Chris LeBlanc
  2012-08-08 13:03 ` Jon TURNEY
  0 siblings, 1 reply; 10+ messages in thread
From: Chris LeBlanc @ 2012-08-08  4:51 UTC (permalink / raw)
  To: cygwin-xfree

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/


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: XWin.exe segmentation fault on Windows 7
  2012-08-08  4:51 XWin.exe segmentation fault on Windows 7 Chris LeBlanc
@ 2012-08-08 13:03 ` Jon TURNEY
  2012-08-08 23:19   ` Chris LeBlanc
  0 siblings, 1 reply; 10+ messages in thread
From: Jon TURNEY @ 2012-08-08 13:03 UTC (permalink / raw)
  To: cygwin-xfree; +Cc: crleblanc

On 08/08/2012 05:51, Chris LeBlanc wrote:
> 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.

Thanks for the detailed bug report.

Given you were getting fork problems before this upgrade, this might well be a
problem with some other software interfering with cygwin's operation. So you
should take a look at [1], and probably try running XWin with CYGWIN including
detect_bloda [2]

> 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?

Instructions on building the X server from source are in [3], but with the
debug info package installed you have source and symbols, so you should be
able to set a breakpoint on main and step through the code anyhow.

>       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)

This stack trace looks highly suspicious:
- The presence of the invalid address 0x40010006 as src for strcpy and in the
backtrace
- I think cygwin is supposed to notice it is being debugged and give control
to the debugger and not write a stackdump file
- I don't think OutputDebugStringA() should ever end up calling cygwin's strcpy()

So all this suggests to me some kind of stack corruption has happened.

> 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

Processing this with "awk '/^[0-9]/{print $2}' XWin.exe.stackdump | addr2line
-asf -e /usr/bin/cygwin1.dll", and cleaning up the output by hand a bit, gives...

0x61129f8b	strcpy			strcpy.c:86
0x6108e2ba	fillout_mntent		mount.cc:1636
0x6108eb57	cygdrive_getmntent	mount.cc:1720
0x61091f56	getmntent		mount.cc:1900
0x610d5f05	??			??:0
0x00528f43	main			main.c:145
0x61007535	_Z10dll_crt0_1Pv	dcrt0.cc:982

... which looks a bit more reasonable, and suggests something in the cygwin
DLL is exploding when XWin uses getmntent() in winCheckMount() to check for
FAT and textmode mounts.

[1] http://cygwin.com/faq/faq.using.html#faq.using.bloda
[2] http://cygwin.com/ml/cygwin/2012-02/msg00797.html
[2] http://x.cygwin.com/docs/cg/

-- 
Jon TURNEY
Volunteer Cygwin/X X Server maintainer

--
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/


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: XWin.exe segmentation fault on Windows 7
  2012-08-08 13:03 ` Jon TURNEY
@ 2012-08-08 23:19   ` Chris LeBlanc
  2012-08-09  2:19     ` Mark Geisert
  0 siblings, 1 reply; 10+ messages in thread
From: Chris LeBlanc @ 2012-08-08 23:19 UTC (permalink / raw)
  To: cygwin-xfree

Hi Jon,

Thanks for the excellent response.

> Given you were getting fork problems before this upgrade, this might well be a
> problem with some other software interfering with cygwin's operation. So you
> should take a look at [1], and probably try running XWin with CYGWIN including
> detect_bloda [2]

The only software I found on her computer that is also on that list
was the McAfee virus scanner.  We disabled this and still saw the
problem (though I noticed the process was still running, and
re-launched itself if you killed it!).  I also tried uninstalling some
other software that might have been interfering; such as DVD burning
software, etc. but still saw the problem (even after a reboot and
rebaseall).

I then set the environment variable CYGWIN=detect_bloda  and launched
a bash instance but didn't see any messages about BLODA detected.
This is a nice feature, I'll be sure to use it if I find any more
forking issues in the future.

Our IT staff is pretty good at quick reinstalls, so I've asked them to
reinstall Windows 7 on this machine.  I'm hopeful this will solve the
problem, but if not I'll continue with debugging XWin.

Thanks,
Chris

--
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/


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: XWin.exe segmentation fault on Windows 7
  2012-08-08 23:19   ` Chris LeBlanc
@ 2012-08-09  2:19     ` Mark Geisert
  2012-08-09  4:55       ` Chris LeBlanc
  0 siblings, 1 reply; 10+ messages in thread
From: Mark Geisert @ 2012-08-09  2:19 UTC (permalink / raw)
  To: cygwin-xfree

> The only software I found on her computer that is also on that list
> was the McAfee virus scanner.  We disabled this and still saw the
> problem (though I noticed the process was still running, and
> re-launched itself if you killed it!).

As Jon's reference [1] explains, merely disabling the BLODA might not be
sufficient.  You may have to completely uninstall it to be rid of its effects. 

*Especially* if it has processes that re-launch themselves on kill; I mean, how
can you know whether you've ruled this particular BLODA out as an explanation
for the issue unless you've completely uninstalled it?
HTH,

..mark



--
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/


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: XWin.exe segmentation fault on Windows 7
  2012-08-09  2:19     ` Mark Geisert
@ 2012-08-09  4:55       ` Chris LeBlanc
  2012-08-13  4:24         ` Chris LeBlanc
  0 siblings, 1 reply; 10+ messages in thread
From: Chris LeBlanc @ 2012-08-09  4:55 UTC (permalink / raw)
  To: cygwin-xfree

Hi Mark,

> As Jon's reference [1] explains, merely disabling the BLODA might not be
> sufficient.  You may have to completely uninstall it to be rid of its effects.
>
> *Especially* if it has processes that re-launch themselves on kill; I mean, how
> can you know whether you've ruled this particular BLODA out as an explanation
> for the issue unless you've completely uninstalled it?
> HTH,

I agree completely.  My preference was to try a reinstall and go from
there since we know Cygwin works fine on a clean Windows 7 install.
Unfortunately our sysadmins don't want to reinstall the OS.

Being a corporate environment there's no chance of running this
machine without the approved virus scanner running.  I'll talk to the
them again and see if they will temporarily uninstall McAfee so we can
see if it's the cause of the problem.

Cheers,
Chris

--
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/


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: XWin.exe segmentation fault on Windows 7
  2012-08-09  4:55       ` Chris LeBlanc
@ 2012-08-13  4:24         ` Chris LeBlanc
  2012-08-13 12:17           ` Jon TURNEY
  0 siblings, 1 reply; 10+ messages in thread
From: Chris LeBlanc @ 2012-08-13  4:24 UTC (permalink / raw)
  To: cygwin-xfree

On Thu, Aug 9, 2012 at 4:55 PM, Chris LeBlanc <crleblanc@gmail.com> wrote:
> Hi Mark,
>
>> As Jon's reference [1] explains, merely disabling the BLODA might not be
>> sufficient.  You may have to completely uninstall it to be rid of its effects.
>>
>> *Especially* if it has processes that re-launch themselves on kill; I mean, how
>> can you know whether you've ruled this particular BLODA out as an explanation
>> for the issue unless you've completely uninstalled it?
>> HTH,
>

In an effort to track down this bug, we tried completely uninstalling
the virus scanner.  XWin.exe is still failing in the same way (even
after another reinstall and rebase).

I compiled xorg with debugging from the source packages, and that
shows the same behaviour.  I can step through the debugger, but the
output is the same as what Jon found in the previous email, failing on
the call to strcpy().  I've logged the gdb output to a file and can
attach it if anyone is interested.

This machine has previously had the NoMachine client installed on it.
I noticed that it used it's own copy of cygwin1.dll, so I uninstalled
this program.  Is there any chance that this is still causing a
problem, even though it's been uninstalled?

Cheers,
Chris

--
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/


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: XWin.exe segmentation fault on Windows 7
  2012-08-13  4:24         ` Chris LeBlanc
@ 2012-08-13 12:17           ` Jon TURNEY
  2012-08-13 12:42             ` Corinna Vinschen
  0 siblings, 1 reply; 10+ messages in thread
From: Jon TURNEY @ 2012-08-13 12:17 UTC (permalink / raw)
  To: cygwin-xfree; +Cc: crleblanc

On 13/08/12 05:23, Chris LeBlanc wrote:
> I compiled xorg with debugging from the source packages, and that
> shows the same behaviour.  I can step through the debugger, but the
> output is the same as what Jon found in the previous email, failing on
> the call to strcpy().  I've logged the gdb output to a file and can
> attach it if anyone is interested.

Yes, please.

Assuming for the moment this is a defect in the cygwin DLL, it would be 
interesting to see the output of 'mount'.  You might also want to 
install the cygwin-debuginfo package and see if you can debug the 
problem in getmntent().

It might be worthwhile installing the latest cygwin snapshot [1] to see 
if the problem still exists.

[1] http://cygwin.com/snapshots/


--
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/


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: XWin.exe segmentation fault on Windows 7
  2012-08-13 12:17           ` Jon TURNEY
@ 2012-08-13 12:42             ` Corinna Vinschen
  2012-08-14  4:42               ` Chris LeBlanc
  0 siblings, 1 reply; 10+ messages in thread
From: Corinna Vinschen @ 2012-08-13 12:42 UTC (permalink / raw)
  To: cygwin-xfree

On Aug 13 13:17, Jon TURNEY wrote:
> On 13/08/12 05:23, Chris LeBlanc wrote:
> >I compiled xorg with debugging from the source packages, and that
> >shows the same behaviour.  I can step through the debugger, but the
> >output is the same as what Jon found in the previous email, failing on
> >the call to strcpy().  I've logged the gdb output to a file and can
> >attach it if anyone is interested.
> 
> Yes, please.
> 
> Assuming for the moment this is a defect in the cygwin DLL, it would
> be interesting to see the output of 'mount'.  You might also want to
> install the cygwin-debuginfo package and see if you can debug the
> problem in getmntent().
> 
> It might be worthwhile installing the latest cygwin snapshot [1] to
> see if the problem still exists.
> 
> [1] http://cygwin.com/snapshots/

First step is to take XWin out of the picture.  If this is a generic
problem with getmntent, then a standard getmntent loop should show the
same behaviour:

  #include <stdio.h>
  #include <mntent.h>

  int main ()
  {
    FILE *fp;
    struct mntent *mnt;

    fp = setmntent ("/etc/mtab", "r");
    while ((mnt = getmntent (fp)) != NULL)
      printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",
	      mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
    endmntent (fp);
    return 0;
  }

Now the question is, if the same problem occurs, why?  Please paste
the contents of /etc/fstab and, if it exists, /etc/fstab.d/$USER
into your reply.


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat

--
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/


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: XWin.exe segmentation fault on Windows 7
  2012-08-13 12:42             ` Corinna Vinschen
@ 2012-08-14  4:42               ` Chris LeBlanc
  2012-08-14  9:53                 ` Corinna Vinschen
  0 siblings, 1 reply; 10+ messages in thread
From: Chris LeBlanc @ 2012-08-14  4:42 UTC (permalink / raw)
  To: cygwin-xfree

[-- Attachment #1: Type: text/plain, Size: 2151 bytes --]

> Now the question is, if the same problem occurs, why?  Please paste
> the contents of /etc/fstab and, if it exists, /etc/fstab.d/$USER
> into your reply.

Thanks for the information, I think we're getting closer to finding the problem.

/etc/fstab doesn't have anything in it apart from comments, and the
/etc/fstab.d directory is empty.

Here is the output from the mount command:
C:/cygwin/bin on /usr/bin type ntfs (binary,auto)
C:/cygwin/lib on /usr/lib type ntfs (binary,auto)
C:/cygwin on / type ntfs (binary,auto)
C: on /cygdrive/c type ntfs (binary,posix=0,user,noumount,auto)
E: on /cygdrive/e type ntfs (binary,posix=0,user,noumount,auto)
Segmentation fault (core dumped)

It fails when it reaches a network share.  Looking at them in Windows
Explorer, they're all NcFsd network shares and this is a Novell client
machine, if that's any help.

There is some interesting output from a listing of cygdrive.  I'm not
sure why the owner/group is different for the network shares or why
the dates are 1970.  I can also list files in the network shares, so
they're definitely mounted.
$ ls /cygdrive/ -l
total 16
d---------+ 1 TrustedInstaller TrustedInstaller 0 Aug 13 16:19 c
drwx------+ 1 SYSTEM           SYSTEM           0 Aug 13 16:19 e
drwxr-xr-x  1 keleigh          None             0 Jan  1  1970 h
drwxr-xr-x  1 keleigh          None             0 Jan  1  1970 i
drwxr-xr-x  1 keleigh          None             0 Jan  1  1970 j
drwxr-xr-x  1 keleigh          None             0 Jan  1  1970 k
drwxr-xr-x  1 keleigh          None             0 Jan  1  1970 z

I compiled your test C program (gcc -Wall -g mount_test.c -o
mount_test) and ran it under gdb, logging the output to a file
(attached).  It also fails when it gets to the network shares.  I
tried disconnecting the shares and rerunning this program and
XWin.exe, and both worked normally.

I have cygwin_debuginfo installed, but didn't get any useful debugging
info from gdb.  I also tried the same tests on the latest Cygwin
snapshot, but the results were identical.

Any thoughts on why the network shares are causing this behaviour, or
is this a red herring?

Cheers,
Chris

[-- Attachment #2: gdb.txt --]
[-- Type: text/plain, Size: 45735 bytes --]

Breakpoint 1 at 0x40117f: file mount_test.c, line 8.
Starting program: /home/keleigh/mount_test.exe 
[New Thread 5704.0x155c]
[New Thread 5704.0xed8]

Breakpoint 1, main () at mount_test.c:8
8		fp = setmntent ("/etc/mtab", "r");
9		while ((mnt = getmntent (fp)) != NULL)
10			printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
9		while ((mnt = getmntent (fp)) != NULL)
10			printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
9		while ((mnt = getmntent (fp)) != NULL)
10			printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
9		while ((mnt = getmntent (fp)) != NULL)
10			printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
9		while ((mnt = getmntent (fp)) != NULL)
10			printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
9		while ((mnt = getmntent (fp)) != NULL)

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))
0x774eb9bd in RaiseException () from /cygdrive/c/Windows/syswow64/KERNELBASE.dll
Single stepping until exit from function RaiseException,
which has no line number information.
0x774f2ad6 in OutputDebugStringA () from /cygdrive/c/Windows/syswow64/KERNELBASE.dll
Single stepping until exit from function OutputDebugStringA,
which has no line number information.
0x77516904 in KERNELBASE!IsNLSDefinedString () from /cygdrive/c/Windows/syswow64/KERNELBASE.dll
Single stepping until exit from function KERNELBASE!IsNLSDefinedString,
which has no line number information.
0x774fe68d in KERNELBASE!CloseThreadpoolCleanupGroupMembers ()
   from /cygdrive/c/Windows/syswow64/KERNELBASE.dll
Single stepping until exit from function KERNELBASE!CloseThreadpoolCleanupGroupMembers,
which has no line number information.
0x7751690e in KERNELBASE!IsNLSDefinedString () from /cygdrive/c/Windows/syswow64/KERNELBASE.dll
Single stepping until exit from function KERNELBASE!IsNLSDefinedString,
which has no line number information.
0x774f2d0d in OutputDebugStringA () from /cygdrive/c/Windows/syswow64/KERNELBASE.dll
Single stepping until exit from function OutputDebugStringA,
which has no line number information.
_cygtls::signal_debugger (this=<optimized out>, sig=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/exceptions.cc:1391
1391	}
_cygtls::signal_exit (this=0x28ce64, rc=139)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:399
399	  if (rc == SIGQUIT || rc == SIGABRT)
409	  if (have_execed)
has_execed (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/child_info.h:171
171	    if (hExeced)
_cygtls::signal_exit (this=0x28ce64, rc=139)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:409
409	  if (have_execed)
has_execed (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/child_info.h:173
173	    if (type != _CH_EXEC)
_cygtls::signal_exit (this=0x28ce64, rc=139)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:415
415	  if ((rc & 0x80) && !try_to_debug ())
try_to_debug (waitloop=true) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/exceptions.cc:367
367	{
368	  debug_printf ("debugger_command '%s'", debugger_command);
369	  if (*debugger_command == '\0')
450	}
369	  if (*debugger_command == '\0')
450	}
_cygtls::signal_exit (this=0x28ce64, rc=139)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:416
416	    stackdump (thread_context.ebp, true);
stackdump (n=2664872) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/exception.h:35
35	  stackdump (n, (CONTEXT *) 1);
stackdump (ebp=2664872, in=0x1, e=0x0)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/exceptions.cc:285
285	{
288	  if (already_dumped || cygheap->rlim_core == 0Ul)
285	{
288	  if (already_dumped || cygheap->rlim_core == 0Ul)
310	}
_cygtls::signal_exit (this=0x28ce64, rc=139)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:418
418	  lock_process until_exit (true);
lock_process (exiting=true, this=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sync.h:53
53	    locker.acquire ();
muto::acquire (this=0x611a0440, ms=4294967295)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sync.cc:75
75	{
76	  void *this_tls = &_my_tls;
75	{
76	  void *this_tls = &_my_tls;
78	  if (tls != this_tls)
82	      LONG was_waiting = ms ? InterlockedIncrement (&waiters) : 0;
ilockincr (m=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/winbase.h:37
37		": "=&r" (__res), "=m" (*m): "m" (*m): "cc");
muto::acquire (this=0x611a0440, ms=4294967295)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sync.cc:84
84	      while (was_waiting || InterlockedExchange (&sync, 1) != 0)
ilockexch (v=1, t=0x611a0444) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/winbase.h:64
64		: "memory");
muto::acquire (this=0x611a0440, ms=4294967295)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sync.cc:84
84	      while (was_waiting || InterlockedExchange (&sync, 1) != 0)
95	      if (!ms)
98	      tls = this_tls;	/* register this thread. */
101	  return ++visits;	/* Increment visit count. */
102	}
lock_process (exiting=true, this=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sync.h:55
55	    if (exiting && exit_state < ES_PROCESS_LOCKED)
56	      exit_state = ES_PROCESS_LOCKED;
_cygtls::signal_exit (this=0x28ce64, rc=139)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:419
419	  if (have_execed || exit_state > ES_PROCESS_LOCKED)
has_execed (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/child_info.h:171
171	    if (hExeced)
_cygtls::signal_exit (this=0x28ce64, rc=139)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:419
419	  if (have_execed || exit_state > ES_PROCESS_LOCKED)
has_execed (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/child_info.h:173
173	    if (type != _CH_EXEC)
_cygtls::signal_exit (this=0x28ce64, rc=139)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:419
419	  if (have_execed || exit_state > ES_PROCESS_LOCKED)
424	  SetThreadPriority (GetCurrentThread (), THREAD_PRIORITY_TIME_CRITICAL);
426	  sigproc_printf ("about to call do_exit (%x)", rc);
427	  do_exit (rc);
do_exit (status=139) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dcrt0.cc:1091
1091	  syscall_printf ("do_exit (%d), exit_state %d", status, exit_state);
1102	  lock_process until_exit (true);
lock_process (exiting=true, this=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sync.h:53
53	    locker.acquire ();
muto::acquire (this=0x611a0440, ms=4294967295)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sync.cc:75
75	{
76	  void *this_tls = &_my_tls;
75	{
76	  void *this_tls = &_my_tls;
78	  if (tls != this_tls)
101	  return ++visits;	/* Increment visit count. */
102	}
lock_process (exiting=true, this=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sync.h:55
55	    if (exiting && exit_state < ES_PROCESS_LOCKED)
do_exit (status=139) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dcrt0.cc:1104
1104	  if (exit_state < ES_EVENTS_TERMINATE)
1106	      exit_state = ES_EVENTS_TERMINATE;
1107	      events_terminate ();
events_terminate () at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/exceptions.cc:1312
1312	  exit_already = 1;
1313	}
do_exit (status=139) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dcrt0.cc:1110
1110	  if (exit_state < ES_SIGNAL)
1112	      exit_state = ES_SIGNAL;
1113	      signal (SIGCHLD, SIG_IGN);
signal (sig=20, func=0x1) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/signal.cc:37
37	  sig_dispatch_pending ();
36	{
37	  sig_dispatch_pending ();
sig_dispatch_pending (fast=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:503
503	  if (exit_state || &_my_tls == _sig_tls)
502	{
503	  if (exit_state || &_my_tls == _sig_tls)
519	}
signal (sig=20, func=warning: (Internal error: pc 0x1 in read in psymtab, but not in symtab.)

0x1) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/signal.cc:41
41	  if (sig < 0 || sig >= NSIG || sig == SIGKILL || sig == SIGSTOP)
48	  prev = global_sigs[sig].sa_handler;
50	  if (gs.sa_flags & _SA_NORESTART)
48	  prev = global_sigs[sig].sa_handler;
50	  if (gs.sa_flags & _SA_NORESTART)
53	    gs.sa_flags |= SA_RESTART;
55	  gs.sa_mask = SIGTOMASK (sig);
56	  gs.sa_handler = func;
57	  gs.sa_flags &= ~SA_SIGINFO;
59	  syscall_printf ("%p = signal (%d, %p)", prev, sig, func);
55	  gs.sa_mask = SIGTOMASK (sig);
59	  syscall_printf ("%p = signal (%d, %p)", prev, sig, func);
61	}
do_exit (status=139) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dcrt0.cc:1114
1114	      signal (SIGHUP, SIG_IGN);
signal (sig=1, func=warning: (Internal error: pc 0x1 in read in psymtab, but not in symtab.)

0x1) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/signal.cc:37
37	  sig_dispatch_pending ();
36	{
37	  sig_dispatch_pending ();
sig_dispatch_pending (fast=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:503
503	  if (exit_state || &_my_tls == _sig_tls)
502	{
503	  if (exit_state || &_my_tls == _sig_tls)
519	}
signal (sig=1, func=warning: (Internal error: pc 0x1 in read in psymtab, but not in symtab.)

0x1) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/signal.cc:41
41	  if (sig < 0 || sig >= NSIG || sig == SIGKILL || sig == SIGSTOP)
48	  prev = global_sigs[sig].sa_handler;
50	  if (gs.sa_flags & _SA_NORESTART)
48	  prev = global_sigs[sig].sa_handler;
50	  if (gs.sa_flags & _SA_NORESTART)
53	    gs.sa_flags |= SA_RESTART;
55	  gs.sa_mask = SIGTOMASK (sig);
56	  gs.sa_handler = func;
57	  gs.sa_flags &= ~SA_SIGINFO;
59	  syscall_printf ("%p = signal (%d, %p)", prev, sig, func);
55	  gs.sa_mask = SIGTOMASK (sig);
59	  syscall_printf ("%p = signal (%d, %p)", prev, sig, func);
61	}
do_exit (status=139) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dcrt0.cc:1115
1115	      signal (SIGINT, SIG_IGN);
signal (sig=2, func=warning: (Internal error: pc 0x1 in read in psymtab, but not in symtab.)

0x1) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/signal.cc:37
37	  sig_dispatch_pending ();
36	{
37	  sig_dispatch_pending ();
sig_dispatch_pending (fast=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:503
503	  if (exit_state || &_my_tls == _sig_tls)
502	{
503	  if (exit_state || &_my_tls == _sig_tls)
519	}
signal (sig=2, func=warning: (Internal error: pc 0x1 in read in psymtab, but not in symtab.)

0x1) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/signal.cc:41
41	  if (sig < 0 || sig >= NSIG || sig == SIGKILL || sig == SIGSTOP)
48	  prev = global_sigs[sig].sa_handler;
50	  if (gs.sa_flags & _SA_NORESTART)
48	  prev = global_sigs[sig].sa_handler;
50	  if (gs.sa_flags & _SA_NORESTART)
53	    gs.sa_flags |= SA_RESTART;
55	  gs.sa_mask = SIGTOMASK (sig);
56	  gs.sa_handler = func;
57	  gs.sa_flags &= ~SA_SIGINFO;
59	  syscall_printf ("%p = signal (%d, %p)", prev, sig, func);
55	  gs.sa_mask = SIGTOMASK (sig);
59	  syscall_printf ("%p = signal (%d, %p)", prev, sig, func);
61	}
do_exit (status=139) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dcrt0.cc:1116
1116	      signal (SIGQUIT, SIG_IGN);
signal (sig=3, func=warning: (Internal error: pc 0x1 in read in psymtab, but not in symtab.)

0x1) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/signal.cc:37
37	  sig_dispatch_pending ();
36	{
37	  sig_dispatch_pending ();
sig_dispatch_pending (fast=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:503
503	  if (exit_state || &_my_tls == _sig_tls)
502	{
503	  if (exit_state || &_my_tls == _sig_tls)
519	}
signal (sig=3, func=warning: (Internal error: pc 0x1 in read in psymtab, but not in symtab.)

0x1) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/signal.cc:41
41	  if (sig < 0 || sig >= NSIG || sig == SIGKILL || sig == SIGSTOP)
48	  prev = global_sigs[sig].sa_handler;
50	  if (gs.sa_flags & _SA_NORESTART)
48	  prev = global_sigs[sig].sa_handler;
50	  if (gs.sa_flags & _SA_NORESTART)
53	    gs.sa_flags |= SA_RESTART;
55	  gs.sa_mask = SIGTOMASK (sig);
56	  gs.sa_handler = func;
57	  gs.sa_flags &= ~SA_SIGINFO;
59	  syscall_printf ("%p = signal (%d, %p)", prev, sig, func);
55	  gs.sa_mask = SIGTOMASK (sig);
59	  syscall_printf ("%p = signal (%d, %p)", prev, sig, func);
61	}
do_exit (status=139) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dcrt0.cc:1119
1119	  if (exit_state < ES_CLOSEALL)
1121	      exit_state = ES_CLOSEALL;
1122	      close_all_files ();
close_all_files (norelease=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/syscalls.cc:89
89	{
90	  cygheap->fdtab.lock ();
lock (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.h:37
37	  void lock () {lock_process::locker.acquire ();}
close_all_files (norelease=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/syscalls.cc:89
89	{
90	  cygheap->fdtab.lock ();
lock (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.h:37
37	  void lock () {lock_process::locker.acquire ();}
close_all_files (norelease=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/syscalls.cc:89
89	{
90	  cygheap->fdtab.lock ();
lock (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.h:37
37	  void lock () {lock_process::locker.acquire ();}
muto::acquire (this=0x611a0440, ms=4294967295)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sync.cc:75
75	{
76	  void *this_tls = &_my_tls;
75	{
76	  void *this_tls = &_my_tls;
78	  if (tls != this_tls)
101	  return ++visits;	/* Increment visit count. */
102	}
close_all_files (norelease=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/syscalls.cc:92
92	  semaphore::terminate ();
terminate () at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/syscalls.cc:92
92	  semaphore::terminate ();
save_errno (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/cygerrno.h:40
40	    save_errno () {saved = get_errno ();}
__errno () at /usr/src/debug/cygwin-1.7.16-1/newlib/libc/errno/errno.c:13
13	  return &_REENT->_errno;
12	{
14	}
13	  return &_REENT->_errno;
14	}
terminate () at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/thread.h:656
656	    semaphores.for_each (&semaphore::_terminate);
for_each (callback=<optimized out>, this=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/thread.h:656
656	    semaphores.for_each (&semaphore::_terminate);
lock (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/thread.h:656
656	    semaphores.for_each (&semaphore::_terminate);
ilockincr (m=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/winbase.h:37
37		": "=&r" (__res), "=m" (*m): "m" (*m): "cc");
lock (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/thread.h:62
62	    if (InterlockedIncrement ((long *) &lock_counter) != 1)
for_each (callback=<optimized out>, this=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/thread.h:177
177	    list_node *cur = head;
178	    while (cur)
183	    mx.unlock ();
unlock (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/thread.h:183
183	    mx.unlock ();
ilockdecr (m=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/winbase.h:49
49		": "=&r" (__res), "=m" (*m): "m" (*m): "cc");
unlock (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/thread.h:68
68	    if (InterlockedDecrement ((long *) &lock_counter))
terminate () at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/thread.h:655
655	    save_errno save;
~save_errno (this=<optimized out>, __in_chrg=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/cygerrno.h:44
44	    ~save_errno () {errno = _impure_ptr->_errno = saved;}
__errno () at /usr/src/debug/cygwin-1.7.16-1/newlib/libc/errno/errno.c:13
13	  return &_REENT->_errno;
12	{
14	}
13	  return &_REENT->_errno;
14	}
close_all_files (norelease=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/syscalls.cc:96
96	  for (int i = 0; i < (int) cygheap->fdtab.size; i++)
94	  HANDLE h = NULL;
96	  for (int i = 0; i < (int) cygheap->fdtab.size; i++)
98	      cygheap_fdget cfd (i, false, false);
cygheap_fdget (do_set_errno=false, lockit=false, fd=0, this=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/cygheap.h:474
474	    if (fd >= 0 && fd < (int) cygheap->fdtab.size && cygheap->fdtab[fd] != NULL)
close_all_files (norelease=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/syscalls.cc:96
96	  for (int i = 0; i < (int) cygheap->fdtab.size; i++)
98	      cygheap_fdget cfd (i, false, false);
cygheap_fdget (do_set_errno=false, lockit=false, fd=0, this=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/cygheap.h:474
474	    if (fd >= 0 && fd < (int) cygheap->fdtab.size && cygheap->fdtab[fd] != NULL)
479		fh->inc_refcnt ();
inc_refcnt (this=0x61273718) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/cygheap.h:479
479		fh->inc_refcnt ();
ilockincr (m=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/winbase.h:37
37		": "=&r" (__res), "=m" (*m): "m" (*m): "cc");
close_all_files (norelease=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/syscalls.cc:102
102		  if (i == 2)
106		  cfd->close_with_arch ();
fhandler_base::close_with_arch (this=0x61273718)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/fhandler.cc:1101
1101	{
1104	  if (usecount)
1115	  else if (!archetype)
1119	      cleanup ();
fhandler_pty_slave::cleanup (this=0x61273718)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/fhandler_tty.cc:573
573	{
579	  report_tty_counts (this, "closed", "");
573	{
579	  report_tty_counts (this, "closed", "");
580	}
fhandler_base::close_with_arch (this=0x61273718)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/fhandler.cc:1120
1120	      if (archetype_usecount (-1) == 0)
_archetype_usecount (n=-1, ln=1120, fn=0x611d1f80 "int fhandler_base::close_with_arch()", 
    this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/fhandler.h:320
320	    if (!archetype)
322	    archetype->usecount += n;
323	    if (strace.active ())
322	    archetype->usecount += n;
323	    if (strace.active ())
322	    archetype->usecount += n;
323	    if (strace.active ())
fhandler_base::close_with_arch (this=0x61273718)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/fhandler.cc:1120
1120	      if (archetype_usecount (-1) == 0)
1128		  return 0;
1127		  debug_printf ("not closing archetype");
1139	}
close_all_files (norelease=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/syscalls.cc:107
107		  if (!norelease)
108		    cfd.release ();
release (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/cygheap.h:500
500	  void release () { cygheap->fdtab.release (fd); }
dtable::release (this=0x61272ad8, fd=0)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.cc:242
242	{
243	  if (fds[fd]->need_fixup_before ())
242	{
243	  if (fds[fd]->need_fixup_before ())
fhandler_base::need_fixup_before (this=0x61273718)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/fhandler.h:309
309	  virtual bool need_fixup_before () const {return false;}
dtable::release (this=0x61272ad8, fd=0)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.cc:245
245	  fds[fd]->dec_refcnt ();
dec_refcnt (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/fhandler.h:186
186	  long dec_refcnt () {return InterlockedDecrement (&_refcnt);} 
ilockdecr (m=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/winbase.h:49
49		": "=&r" (__res), "=m" (*m): "m" (*m): "cc");
dtable::release (this=0x61272ad8, fd=0)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.cc:247
247	  if (fd <= 2)
246	  fds[fd] = NULL;
247	  if (fd <= 2)
248	    set_std_handle (fd);
set_std_handle (fd=0) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.cc:66
66	{
67	  fhandler_base *fh = cygheap->fdtab[fd];
operator[] (fd=0, this=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.cc:1088
1088	}
set_std_handle (fd=0) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.cc:66
66	{
67	  fhandler_base *fh = cygheap->fdtab[fd];
68	  if (fd == 0)
67	  fhandler_base *fh = cygheap->fdtab[fd];
68	  if (fd == 0)
69	    SetStdHandle (std_consts[fd], fh ? fh->get_handle () : NULL);
0x61173a70 in SetStdHandle@8 () from /usr/bin/cygwin1.dll
Single stepping until exit from function SetStdHandle@8,
which has no line number information.
0x77474737 in UpdateResourceA () from /cygdrive/c/Windows/syswow64/kernel32.dll
Single stepping until exit from function UpdateResourceA,
which has no line number information.
0x77409998 in KERNEL32!GetNumberFormatEx () from /cygdrive/c/Windows/syswow64/kernel32.dll
Single stepping until exit from function KERNEL32!GetNumberFormatEx,
which has no line number information.
0x774ebc56 in SetStdHandle () from /cygdrive/c/Windows/syswow64/KERNELBASE.dll
Single stepping until exit from function SetStdHandle,
which has no line number information.
set_std_handle (fd=1) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.cc:66
66	{
67	  fhandler_base *fh = cygheap->fdtab[fd];
operator[] (fd=1, this=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.cc:1088
1088	}
set_std_handle (fd=1) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.cc:66
66	{
67	  fhandler_base *fh = cygheap->fdtab[fd];
68	  if (fd == 0)
67	  fhandler_base *fh = cygheap->fdtab[fd];
68	  if (fd == 0)
70	  else if (fd <= 2)
71	    SetStdHandle (std_consts[fd], fh ? fh->get_output_handle () : NULL);
[Inferior 1 (process 5704) exited with code 0105400]
Breakpoint 1 at 0x40117f: file mount_test.c, line 9.
Starting program: /home/keleigh/mount_test.exe 
[New Thread 2512.0x139c]
[New Thread 2512.0x11e8]

Breakpoint 1, main () at mount_test.c:9
9	fp = setmntent ("/etc/mtab", "r");
10	while ((mnt = getmntent (fp)) != NULL)
12		  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
11	  printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",
12		  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
11	  printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",
12		  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
11	  printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",
12		  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
11	  printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",
10	while ((mnt = getmntent (fp)) != NULL)
12		  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
11	  printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",
12		  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
11	  printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",
12		  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
11	  printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",
12		  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
11	  printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",
10	while ((mnt = getmntent (fp)) != NULL)
12		  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
11	  printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",
12		  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
11	  printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",
12		  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
11	  printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",
12		  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
11	  printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",
10	while ((mnt = getmntent (fp)) != NULL)
12		  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
11	  printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",
12		  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
11	  printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",
12		  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
11	  printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",
12		  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
11	  printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",
10	while ((mnt = getmntent (fp)) != NULL)
12		  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
11	  printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",
12		  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
11	  printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",
12		  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
11	  printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",
12		  mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts);
11	  printf ("name: <%s> mount point: <%s> type: %s flags: <%s>\n",
10	while ((mnt = getmntent (fp)) != NULL)

Program received signal SIGSEGV, Segmentation fault.
0x774eb9bc in RaiseException () from /cygdrive/c/Windows/syswow64/KERNELBASE.dll
Single stepping until exit from function RaiseException,
which has no line number information.
0x774f2ad6 in OutputDebugStringA () from /cygdrive/c/Windows/syswow64/KERNELBASE.dll
Single stepping until exit from function OutputDebugStringA,
which has no line number information.
0x77516904 in KERNELBASE!IsNLSDefinedString () from /cygdrive/c/Windows/syswow64/KERNELBASE.dll
Single stepping until exit from function KERNELBASE!IsNLSDefinedString,
which has no line number information.
0x774fe68d in KERNELBASE!CloseThreadpoolCleanupGroupMembers ()
   from /cygdrive/c/Windows/syswow64/KERNELBASE.dll
Single stepping until exit from function KERNELBASE!CloseThreadpoolCleanupGroupMembers,
which has no line number information.
0x7751690e in KERNELBASE!IsNLSDefinedString () from /cygdrive/c/Windows/syswow64/KERNELBASE.dll
Single stepping until exit from function KERNELBASE!IsNLSDefinedString,
which has no line number information.
0x774f2d0d in OutputDebugStringA () from /cygdrive/c/Windows/syswow64/KERNELBASE.dll
Single stepping until exit from function OutputDebugStringA,
which has no line number information.
_cygtls::signal_debugger (this=<optimized out>, sig=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/exceptions.cc:1391
1391	}
_cygtls::signal_exit (this=0x28ce64, rc=139)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:399
399	  if (rc == SIGQUIT || rc == SIGABRT)
409	  if (have_execed)
has_execed (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/child_info.h:171
171	    if (hExeced)
_cygtls::signal_exit (this=0x28ce64, rc=139)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:409
409	  if (have_execed)
has_execed (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/child_info.h:173
173	    if (type != _CH_EXEC)
_cygtls::signal_exit (this=0x28ce64, rc=139)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:415
415	  if ((rc & 0x80) && !try_to_debug ())
try_to_debug (waitloop=true) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/exceptions.cc:367
367	{
368	  debug_printf ("debugger_command '%s'", debugger_command);
369	  if (*debugger_command == '\0')
450	}
369	  if (*debugger_command == '\0')
450	}
_cygtls::signal_exit (this=0x28ce64, rc=139)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:416
416	    stackdump (thread_context.ebp, true);
stackdump (n=2664872) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/exception.h:35
35	  stackdump (n, (CONTEXT *) 1);
stackdump (ebp=2664872, in=0x1, e=0x0)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/exceptions.cc:285
285	{
288	  if (already_dumped || cygheap->rlim_core == 0Ul)
285	{
288	  if (already_dumped || cygheap->rlim_core == 0Ul)
310	}
_cygtls::signal_exit (this=0x28ce64, rc=139)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:418
418	  lock_process until_exit (true);
lock_process (exiting=true, this=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sync.h:53
53	    locker.acquire ();
muto::acquire (this=0x611a0440, ms=4294967295)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sync.cc:75
75	{
76	  void *this_tls = &_my_tls;
75	{
76	  void *this_tls = &_my_tls;
78	  if (tls != this_tls)
82	      LONG was_waiting = ms ? InterlockedIncrement (&waiters) : 0;
ilockincr (m=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/winbase.h:37
37		": "=&r" (__res), "=m" (*m): "m" (*m): "cc");
muto::acquire (this=0x611a0440, ms=4294967295)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sync.cc:84
84	      while (was_waiting || InterlockedExchange (&sync, 1) != 0)
ilockexch (v=1, t=0x611a0444) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/winbase.h:64
64		: "memory");
muto::acquire (this=0x611a0440, ms=4294967295)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sync.cc:84
84	      while (was_waiting || InterlockedExchange (&sync, 1) != 0)
95	      if (!ms)
98	      tls = this_tls;	/* register this thread. */
101	  return ++visits;	/* Increment visit count. */
102	}
lock_process (exiting=true, this=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sync.h:55
55	    if (exiting && exit_state < ES_PROCESS_LOCKED)
56	      exit_state = ES_PROCESS_LOCKED;
_cygtls::signal_exit (this=0x28ce64, rc=139)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:419
419	  if (have_execed || exit_state > ES_PROCESS_LOCKED)
has_execed (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/child_info.h:171
171	    if (hExeced)
_cygtls::signal_exit (this=0x28ce64, rc=139)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:419
419	  if (have_execed || exit_state > ES_PROCESS_LOCKED)
has_execed (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/child_info.h:173
173	    if (type != _CH_EXEC)
_cygtls::signal_exit (this=0x28ce64, rc=139)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:419
419	  if (have_execed || exit_state > ES_PROCESS_LOCKED)
424	  SetThreadPriority (GetCurrentThread (), THREAD_PRIORITY_TIME_CRITICAL);
426	  sigproc_printf ("about to call do_exit (%x)", rc);
427	  do_exit (rc);
do_exit (status=139) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dcrt0.cc:1091
1091	  syscall_printf ("do_exit (%d), exit_state %d", status, exit_state);
1102	  lock_process until_exit (true);
lock_process (exiting=true, this=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sync.h:53
53	    locker.acquire ();
muto::acquire (this=0x611a0440, ms=4294967295)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sync.cc:75
75	{
76	  void *this_tls = &_my_tls;
75	{
76	  void *this_tls = &_my_tls;
78	  if (tls != this_tls)
101	  return ++visits;	/* Increment visit count. */
102	}
lock_process (exiting=true, this=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sync.h:55
55	    if (exiting && exit_state < ES_PROCESS_LOCKED)
do_exit (status=139) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dcrt0.cc:1104
1104	  if (exit_state < ES_EVENTS_TERMINATE)
1106	      exit_state = ES_EVENTS_TERMINATE;
1107	      events_terminate ();
events_terminate () at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/exceptions.cc:1312
1312	  exit_already = 1;
1313	}
do_exit (status=139) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dcrt0.cc:1110
1110	  if (exit_state < ES_SIGNAL)
1112	      exit_state = ES_SIGNAL;
1113	      signal (SIGCHLD, SIG_IGN);
signal (sig=20, func=0x1) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/signal.cc:37
37	  sig_dispatch_pending ();
36	{
37	  sig_dispatch_pending ();
sig_dispatch_pending (fast=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:503
503	  if (exit_state || &_my_tls == _sig_tls)
502	{
503	  if (exit_state || &_my_tls == _sig_tls)
519	}
signal (sig=20, func=warning: (Internal error: pc 0x1 in read in psymtab, but not in symtab.)

0x1) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/signal.cc:41
41	  if (sig < 0 || sig >= NSIG || sig == SIGKILL || sig == SIGSTOP)
48	  prev = global_sigs[sig].sa_handler;
50	  if (gs.sa_flags & _SA_NORESTART)
48	  prev = global_sigs[sig].sa_handler;
50	  if (gs.sa_flags & _SA_NORESTART)
53	    gs.sa_flags |= SA_RESTART;
55	  gs.sa_mask = SIGTOMASK (sig);
56	  gs.sa_handler = func;
57	  gs.sa_flags &= ~SA_SIGINFO;
59	  syscall_printf ("%p = signal (%d, %p)", prev, sig, func);
55	  gs.sa_mask = SIGTOMASK (sig);
59	  syscall_printf ("%p = signal (%d, %p)", prev, sig, func);
61	}
do_exit (status=139) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dcrt0.cc:1114
1114	      signal (SIGHUP, SIG_IGN);
signal (sig=1, func=warning: (Internal error: pc 0x1 in read in psymtab, but not in symtab.)

0x1) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/signal.cc:37
37	  sig_dispatch_pending ();
36	{
37	  sig_dispatch_pending ();
sig_dispatch_pending (fast=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:503
503	  if (exit_state || &_my_tls == _sig_tls)
502	{
503	  if (exit_state || &_my_tls == _sig_tls)
519	}
signal (sig=1, func=warning: (Internal error: pc 0x1 in read in psymtab, but not in symtab.)

0x1) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/signal.cc:41
41	  if (sig < 0 || sig >= NSIG || sig == SIGKILL || sig == SIGSTOP)
48	  prev = global_sigs[sig].sa_handler;
50	  if (gs.sa_flags & _SA_NORESTART)
48	  prev = global_sigs[sig].sa_handler;
50	  if (gs.sa_flags & _SA_NORESTART)
53	    gs.sa_flags |= SA_RESTART;
55	  gs.sa_mask = SIGTOMASK (sig);
56	  gs.sa_handler = func;
57	  gs.sa_flags &= ~SA_SIGINFO;
59	  syscall_printf ("%p = signal (%d, %p)", prev, sig, func);
55	  gs.sa_mask = SIGTOMASK (sig);
59	  syscall_printf ("%p = signal (%d, %p)", prev, sig, func);
61	}
do_exit (status=139) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dcrt0.cc:1115
1115	      signal (SIGINT, SIG_IGN);
signal (sig=2, func=warning: (Internal error: pc 0x1 in read in psymtab, but not in symtab.)

0x1) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/signal.cc:37
37	  sig_dispatch_pending ();
36	{
37	  sig_dispatch_pending ();
sig_dispatch_pending (fast=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:503
503	  if (exit_state || &_my_tls == _sig_tls)
502	{
503	  if (exit_state || &_my_tls == _sig_tls)
519	}
signal (sig=2, func=warning: (Internal error: pc 0x1 in read in psymtab, but not in symtab.)

0x1) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/signal.cc:41
41	  if (sig < 0 || sig >= NSIG || sig == SIGKILL || sig == SIGSTOP)
48	  prev = global_sigs[sig].sa_handler;
50	  if (gs.sa_flags & _SA_NORESTART)
48	  prev = global_sigs[sig].sa_handler;
50	  if (gs.sa_flags & _SA_NORESTART)
53	    gs.sa_flags |= SA_RESTART;
55	  gs.sa_mask = SIGTOMASK (sig);
56	  gs.sa_handler = func;
57	  gs.sa_flags &= ~SA_SIGINFO;
59	  syscall_printf ("%p = signal (%d, %p)", prev, sig, func);
55	  gs.sa_mask = SIGTOMASK (sig);
59	  syscall_printf ("%p = signal (%d, %p)", prev, sig, func);
61	}
do_exit (status=139) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dcrt0.cc:1116
1116	      signal (SIGQUIT, SIG_IGN);
signal (sig=3, func=warning: (Internal error: pc 0x1 in read in psymtab, but not in symtab.)

0x1) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/signal.cc:37
37	  sig_dispatch_pending ();
36	{
37	  sig_dispatch_pending ();
sig_dispatch_pending (fast=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sigproc.cc:503
503	  if (exit_state || &_my_tls == _sig_tls)
502	{
503	  if (exit_state || &_my_tls == _sig_tls)
519	}
signal (sig=3, func=warning: (Internal error: pc 0x1 in read in psymtab, but not in symtab.)

0x1) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/signal.cc:41
41	  if (sig < 0 || sig >= NSIG || sig == SIGKILL || sig == SIGSTOP)
48	  prev = global_sigs[sig].sa_handler;
50	  if (gs.sa_flags & _SA_NORESTART)
48	  prev = global_sigs[sig].sa_handler;
50	  if (gs.sa_flags & _SA_NORESTART)
53	    gs.sa_flags |= SA_RESTART;
55	  gs.sa_mask = SIGTOMASK (sig);
56	  gs.sa_handler = func;
57	  gs.sa_flags &= ~SA_SIGINFO;
59	  syscall_printf ("%p = signal (%d, %p)", prev, sig, func);
55	  gs.sa_mask = SIGTOMASK (sig);
59	  syscall_printf ("%p = signal (%d, %p)", prev, sig, func);
61	}
do_exit (status=139) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dcrt0.cc:1119
1119	  if (exit_state < ES_CLOSEALL)
1121	      exit_state = ES_CLOSEALL;
1122	      close_all_files ();
close_all_files (norelease=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/syscalls.cc:89
89	{
90	  cygheap->fdtab.lock ();
lock (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.h:37
37	  void lock () {lock_process::locker.acquire ();}
close_all_files (norelease=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/syscalls.cc:89
89	{
90	  cygheap->fdtab.lock ();
lock (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.h:37
37	  void lock () {lock_process::locker.acquire ();}
close_all_files (norelease=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/syscalls.cc:89
89	{
90	  cygheap->fdtab.lock ();
lock (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.h:37
37	  void lock () {lock_process::locker.acquire ();}
muto::acquire (this=0x611a0440, ms=4294967295)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/sync.cc:75
75	{
76	  void *this_tls = &_my_tls;
75	{
76	  void *this_tls = &_my_tls;
78	  if (tls != this_tls)
101	  return ++visits;	/* Increment visit count. */
102	}
close_all_files (norelease=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/syscalls.cc:92
92	  semaphore::terminate ();
terminate () at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/syscalls.cc:92
92	  semaphore::terminate ();
save_errno (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/cygerrno.h:40
40	    save_errno () {saved = get_errno ();}
__errno () at /usr/src/debug/cygwin-1.7.16-1/newlib/libc/errno/errno.c:13
13	  return &_REENT->_errno;
12	{
14	}
13	  return &_REENT->_errno;
14	}
terminate () at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/thread.h:656
656	    semaphores.for_each (&semaphore::_terminate);
for_each (callback=<optimized out>, this=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/thread.h:656
656	    semaphores.for_each (&semaphore::_terminate);
lock (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/thread.h:656
656	    semaphores.for_each (&semaphore::_terminate);
ilockincr (m=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/winbase.h:37
37		": "=&r" (__res), "=m" (*m): "m" (*m): "cc");
lock (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/thread.h:62
62	    if (InterlockedIncrement ((long *) &lock_counter) != 1)
for_each (callback=<optimized out>, this=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/thread.h:177
177	    list_node *cur = head;
178	    while (cur)
183	    mx.unlock ();
unlock (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/thread.h:183
183	    mx.unlock ();
ilockdecr (m=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/winbase.h:49
49		": "=&r" (__res), "=m" (*m): "m" (*m): "cc");
unlock (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/thread.h:68
68	    if (InterlockedDecrement ((long *) &lock_counter))
terminate () at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/thread.h:655
655	    save_errno save;
~save_errno (this=<optimized out>, __in_chrg=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/cygerrno.h:44
44	    ~save_errno () {errno = _impure_ptr->_errno = saved;}
__errno () at /usr/src/debug/cygwin-1.7.16-1/newlib/libc/errno/errno.c:13
13	  return &_REENT->_errno;
12	{
14	}
13	  return &_REENT->_errno;
14	}
close_all_files (norelease=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/syscalls.cc:96
96	  for (int i = 0; i < (int) cygheap->fdtab.size; i++)
94	  HANDLE h = NULL;
96	  for (int i = 0; i < (int) cygheap->fdtab.size; i++)
98	      cygheap_fdget cfd (i, false, false);
cygheap_fdget (do_set_errno=false, lockit=false, fd=0, this=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/cygheap.h:474
474	    if (fd >= 0 && fd < (int) cygheap->fdtab.size && cygheap->fdtab[fd] != NULL)
close_all_files (norelease=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/syscalls.cc:96
96	  for (int i = 0; i < (int) cygheap->fdtab.size; i++)
98	      cygheap_fdget cfd (i, false, false);
cygheap_fdget (do_set_errno=false, lockit=false, fd=0, this=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/cygheap.h:474
474	    if (fd >= 0 && fd < (int) cygheap->fdtab.size && cygheap->fdtab[fd] != NULL)
479		fh->inc_refcnt ();
inc_refcnt (this=0x61273718) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/cygheap.h:479
479		fh->inc_refcnt ();
ilockincr (m=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/winbase.h:37
37		": "=&r" (__res), "=m" (*m): "m" (*m): "cc");
close_all_files (norelease=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/syscalls.cc:102
102		  if (i == 2)
106		  cfd->close_with_arch ();
fhandler_base::close_with_arch (this=0x61273718)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/fhandler.cc:1101
1101	{
1104	  if (usecount)
1115	  else if (!archetype)
1119	      cleanup ();
fhandler_pty_slave::cleanup (this=0x61273718)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/fhandler_tty.cc:573
573	{
579	  report_tty_counts (this, "closed", "");
573	{
579	  report_tty_counts (this, "closed", "");
580	}
fhandler_base::close_with_arch (this=0x61273718)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/fhandler.cc:1120
1120	      if (archetype_usecount (-1) == 0)
_archetype_usecount (n=-1, ln=1120, fn=0x611d1f80 "int fhandler_base::close_with_arch()", 
    this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/fhandler.h:320
320	    if (!archetype)
322	    archetype->usecount += n;
323	    if (strace.active ())
322	    archetype->usecount += n;
323	    if (strace.active ())
322	    archetype->usecount += n;
323	    if (strace.active ())
fhandler_base::close_with_arch (this=0x61273718)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/fhandler.cc:1120
1120	      if (archetype_usecount (-1) == 0)
1128		  return 0;
1127		  debug_printf ("not closing archetype");
1139	}
close_all_files (norelease=false) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/syscalls.cc:107
107		  if (!norelease)
108		    cfd.release ();
release (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/cygheap.h:500
500	  void release () { cygheap->fdtab.release (fd); }
dtable::release (this=0x61272ad8, fd=0)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.cc:242
242	{
243	  if (fds[fd]->need_fixup_before ())
242	{
243	  if (fds[fd]->need_fixup_before ())
fhandler_base::need_fixup_before (this=0x61273718)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/fhandler.h:309
309	  virtual bool need_fixup_before () const {return false;}
dtable::release (this=0x61272ad8, fd=0)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.cc:245
245	  fds[fd]->dec_refcnt ();
dec_refcnt (this=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/fhandler.h:186
186	  long dec_refcnt () {return InterlockedDecrement (&_refcnt);} 
ilockdecr (m=<optimized out>) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/winbase.h:49
49		": "=&r" (__res), "=m" (*m): "m" (*m): "cc");
dtable::release (this=0x61272ad8, fd=0)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.cc:247
247	  if (fd <= 2)
246	  fds[fd] = NULL;
247	  if (fd <= 2)
248	    set_std_handle (fd);
set_std_handle (fd=0) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.cc:66
66	{
67	  fhandler_base *fh = cygheap->fdtab[fd];
operator[] (fd=0, this=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.cc:1088
1088	}
set_std_handle (fd=0) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.cc:66
66	{
67	  fhandler_base *fh = cygheap->fdtab[fd];
68	  if (fd == 0)
67	  fhandler_base *fh = cygheap->fdtab[fd];
68	  if (fd == 0)
69	    SetStdHandle (std_consts[fd], fh ? fh->get_handle () : NULL);
0x61173a70 in SetStdHandle@8 () from /usr/bin/cygwin1.dll
Single stepping until exit from function SetStdHandle@8,
which has no line number information.
0x77474737 in UpdateResourceA () from /cygdrive/c/Windows/syswow64/kernel32.dll
Single stepping until exit from function UpdateResourceA,
which has no line number information.
0x77409998 in KERNEL32!GetNumberFormatEx () from /cygdrive/c/Windows/syswow64/kernel32.dll
Single stepping until exit from function KERNEL32!GetNumberFormatEx,
which has no line number information.
0x774ebc56 in SetStdHandle () from /cygdrive/c/Windows/syswow64/KERNELBASE.dll
Single stepping until exit from function SetStdHandle,
which has no line number information.
set_std_handle (fd=1) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.cc:66
66	{
67	  fhandler_base *fh = cygheap->fdtab[fd];
operator[] (fd=1, this=<optimized out>)
    at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.cc:1088
1088	}
set_std_handle (fd=1) at /usr/src/debug/cygwin-1.7.16-1/winsup/cygwin/dtable.cc:66
66	{
67	  fhandler_base *fh = cygheap->fdtab[fd];
68	  if (fd == 0)
67	  fhandler_base *fh = cygheap->fdtab[fd];
68	  if (fd == 0)
70	  else if (fd <= 2)
71	    SetStdHandle (std_consts[fd], fh ? fh->get_output_handle () : NULL);
[Inferior 1 (process 2512) exited with code 0105400]

[-- Attachment #3: Type: text/plain, Size: 223 bytes --]

--
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/

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: XWin.exe segmentation fault on Windows 7
  2012-08-14  4:42               ` Chris LeBlanc
@ 2012-08-14  9:53                 ` Corinna Vinschen
  0 siblings, 0 replies; 10+ messages in thread
From: Corinna Vinschen @ 2012-08-14  9:53 UTC (permalink / raw)
  To: cygwin-xfree

On Aug 14 16:41, Chris LeBlanc wrote:
> > Now the question is, if the same problem occurs, why?  Please paste
> > the contents of /etc/fstab and, if it exists, /etc/fstab.d/$USER
> > into your reply.
> 
> Thanks for the information, I think we're getting closer to finding the problem.
> 
> /etc/fstab doesn't have anything in it apart from comments, and the
> /etc/fstab.d directory is empty.
> 
> Here is the output from the mount command:
> C:/cygwin/bin on /usr/bin type ntfs (binary,auto)
> C:/cygwin/lib on /usr/lib type ntfs (binary,auto)
> C:/cygwin on / type ntfs (binary,auto)
> C: on /cygdrive/c type ntfs (binary,posix=0,user,noumount,auto)
> E: on /cygdrive/e type ntfs (binary,posix=0,user,noumount,auto)
> Segmentation fault (core dumped)
> 
> It fails when it reaches a network share.  Looking at them in Windows
> Explorer, they're all NcFsd network shares ...

That was the essential information to find the bug.  For the last
Cygwin version I added support for the new ReFS filesystem and I
changed one datastructure without also changing another, closely
related datastructure.  The bug would have shown for other FSes
as well, but it would only have resulted in printing the wrong
FS type in mount.  Only for NcFsd it was bound to crash.

This will be fixed in the (soon to come) Cygwin 1.7.17.


Thanks,
Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat

--
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/


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2012-08-14  9:53 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-08-08  4:51 XWin.exe segmentation fault on Windows 7 Chris LeBlanc
2012-08-08 13:03 ` Jon TURNEY
2012-08-08 23:19   ` Chris LeBlanc
2012-08-09  2:19     ` Mark Geisert
2012-08-09  4:55       ` Chris LeBlanc
2012-08-13  4:24         ` Chris LeBlanc
2012-08-13 12:17           ` Jon TURNEY
2012-08-13 12:42             ` Corinna Vinschen
2012-08-14  4:42               ` Chris LeBlanc
2012-08-14  9:53                 ` Corinna Vinschen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).