delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2000/05/27/18:28:57

From: sandmann AT clio DOT rice DOT edu (Charles Sandmann)
Message-Id: <10005272221.AA17175@clio.rice.edu>
Subject: Re: W2k
To: eliz AT is DOT elta DOT co DOT il
Date: Sat, 27 May 2000 17:21:08 -0500 (CDT)
Cc: djgpp-workers AT delorie DOT com
In-Reply-To: <200005270606.JAA06456@mailgw1.netvision.net.il> from "eliz@is.elta.co.il" at May 27, 2000 09:04:59 AM
X-Mailer: ELM [version 2.5 PL2]
Mime-Version: 1.0
Reply-To: djgpp-workers AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp-workers AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

> First thing to try is whether compilation crashes for you, whether
> from the command line or from inside Make.  

Got 2.03

Simple command line compiles always seem to go fine.  Even things like
gcc -c -O2 *.c with 30 files in the directory seem very reliable.

Running torture, which I compiled with a 2.0 beta (hooks interrupts,
generates lots of page faults, a CWSDPMI test) it will run reliably
and picks up keyboard and timer interrupts reliably.

Going to tests\libc\ansi\math\elefunt and issuing the command make
will always show a failure after a random time between 0 and 5
seconds.  Sometimes a VDM crashage box shows up, sometimes make just
exits after a couple of commands.  You can restart it (make again) 
and it will run another random amount of time failing again.  The 
failures are not in the same place when cleaning out the results
and temporary directories to start from the exact same state.  Dr 
Watson captures the crash state - it's always in the same place (see bottom).

If I touch the keyboard when gcc'ing alone, it seems to make no difference
(still stable, maybe compiles slower when autorepeating ...)

If I touch the keyboard when running make, it does seem to usually cause
crashes to happen immediately.

If I build an image called echo2.exe which echoes the inputs with DJGPP,
and replace the gcc commands in the makefile, it seems to run OK (no
errors).  So make seems OK as long as what it calls doesn't nest.

If I then replace the echo2.exe command with "go32-v2 echo2.exe" which should
do nothing more than nest an extra meaningless level - it reliably fails
just like the original.

My conclusion is that Win2K's emulation is very reliable in one level of
nesting, but a second nesting (3 levels) causes it to have problems in some
cases.  I can run simple images nested 6 deep and they seem to work.  

It could be a simple issue of hardware interrupts when nested several levels
deep or something.  I don't have time to currently rebuild the entire 
distribution without hooking the keyboard to see if that helps.

> I'm not at all sure it
> always crashes, and if it does, I'm not sure we are looking at a
> single problem.  (Somebody reported that if they don't touch the
> keyboard during compilation, it works, others say this doesn't help.)

NTVDM crash:
Application exception occurred:
        App: ntvdm.exe (pid=188)
        When: 5/27/2000 @ 17:10:41.125
        Exception number: 40000005 (vdm event)

*----> System Information <----*
        Computer Name: SETI
        User Name: sandmann
        Number of Processors: 1
        Processor Type: x86 Family 6 Model 7 Stepping 2
        Windows 2000 Version: 5.0
        Current Build: 2195
        Service Pack: None
        Current Type: Uniprocessor Free
        Registered Organization: 
        Registered Owner: Charles Sandmann

*----> Task List <----*
   0 Idle.exe
   8 System.exe
 128 smss.exe
 156 csrss.exe
 152 winlogon.exe
 204 services.exe
 216 lsass.exe
 376 svchost.exe
 404 spoolsv.exe
 436 svchost.exe
 472 regsvc.exe
 492 MSTask.exe
 520 tlntsvr.exe
 596 WinMgmt.exe
 632 inetinfo.exe
 672 Explorer.exe
 812 cmd.exe
 924 setiathome-2_0_.exe
 368 cmd.exe
1012 cmd.exe
 904 cmd.exe
 688 putty.exe
 188 ntvdm.exe
1084 drwtsn32.exe
   0 _Total.exe

(0F000000 - 0F0A1000) 
(77F80000 - 77FF9000) 
(77E80000 - 77F36000) 
(77DB0000 - 77E0A000) 
(77D40000 - 77DAF000) 
(77F40000 - 77F7C000) 
(77E10000 - 77E75000) 
(69B00000 - 69B07000) 


State Dump for Thread Id 0x68

eax=01d2fbb8 ebx=69b012f0 ecx=00000000 edx=69b04180 esi=69b04170 edi=01d2fbdc
eip=77e89b01 esp=01d2fbb0 ebp=01d2fc08 iopl=0         nv up ei pl nz na pe nc
cs=001b  ss=0023  ds=0023  es=0023  fs=003b  gs=0000             efl=00000202


function: RaiseException
        77e89ae8 8bc8             mov     ecx,eax
        77e89aea 48               dec     eax
        77e89aeb 85c9             test    ecx,ecx
        77e89aed 7408             jz     WritePrivateProfileStringW+0x1346 (77e927f7)
        77e89aef 8d4801           lea     ecx,[eax+0x1]          ds:0279d18e=????????
        77e89af2 8d7dc4           lea     edi,[ebp+0xc4]         ss:0279d1de=????????
        77e89af5 f3a5            rep  movsd ds:69b04170=00000000 es:01d2fbdc=00000000
        77e89af7 8d45b0           lea     eax,[ebp+0xb0]         ss:0279d1de=????????
        77e89afa 50               push    eax
        77e89afb ff156414e877     call    dword ptr [77e81464]   ds:77e81464=77fb0360
FAULT ->77e89b01 e9d2030300       jmp     SetThreadContext+0x46 (77eb9ed8)
        77e89b06 8b4d10           mov     ecx,[ebp+0x10]         ss:0279d1de=????????
        77e89b09 e886e4ffff       call    VerifyVersionInfoA+0xe8 (77e87f94)
        77e89b0e 8bf8             mov     edi,eax
        77e89b10 47               inc     edi
        77e89b11 33d2             xor     edx,edx
        77e89b13 e93d150000       jmp     WideCharToMultiByte+0x7d (77e8b055)
        77e89b18 33d2             xor     edx,edx
        77e89b1a e9c0130000       jmp     SearchPathW+0x4b (77e8aedf)
        77e89b1f 895df4           mov     [ebp+0xf4],ebx         ss:0279d1de=????????
        77e89b22 e9e0130000       jmp     SearchPathW+0x73 (77e8af07)
        77e89b27 8b55ec           mov     edx,[ebp+0xec]         ss:0279d1de=????????

*----> Stack Back Trace <----*

FramePtr ReturnAd Param#1  Param#2  Param#3  Param#4  Function Name
01D2FC08 69B01461 40000005 00000000 00000004 69B04160 kernel32!RaiseException 
01D2FC48 69B0139B 0000000E 69B01387 7FFDF000 01D2FC74 ntvdmd!xxxDbgIsDebuggee 
01D2FC60 77F83C48 69B00000 FFFFFFFF 00000000 69B012F0 ntvdmd!<nosymbols> 
01D2FC80 77F8C6DD 69B012F0 69B00000 00000002 00000000 ntdll!iswspace 
01D2FD1C 77F9FB67 01D2FD30 77F80000 00000000 00010017 ntdll!RtlMapGenericMask 
00000000 0070018B 039F0016 0070018B 0070018B 021206B9 ntdll!KiUserApcDispatcher 
00A71068 00000000 00000000 00000000 00000000 00000000 <nosymbols> 

*----> Raw Stack Dump <----*
01d2fbb0  00 00 00 00 00 00 00 00 - 05 00 00 40 00 00 00 00  ...........@....
01d2fbc0  00 00 00 00 01 9b e8 77 - 04 00 00 00 0e 00 00 20  .......w....... 
01d2fbd0  00 00 00 00 00 00 00 00 - 20 41 b0 69 00 00 00 00  ........ A.i....
01d2fbe0  00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00  ................
01d2fbf0  00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00  ................
01d2fc00  00 00 00 00 00 00 00 00 - 48 fc d2 01 61 14 b0 69  ........H...a..i
01d2fc10  05 00 00 40 00 00 00 00 - 04 00 00 00 60 41 b0 69  ...@........`A.i
01d2fc20  00 00 00 00 00 00 00 00 - f0 12 b0 69 b0 40 11 00  ...........i.@..
01d2fc30  20 fc d2 01 b0 40 11 00 - 0c fd d2 01 e0 2c b0 69   ....@.......,.i
01d2fc40  40 11 b0 69 00 00 00 00 - 60 fc d2 01 9b 13 b0 69  @..i....`......i
01d2fc50  0e 00 00 00 87 13 b0 69 - 00 f0 fd 7f 74 fc d2 01  .......i....t...
01d2fc60  80 fc d2 01 48 3c f8 77 - 00 00 b0 69 ff ff ff ff  ....H<.w...i....
01d2fc70  00 00 00 00 f0 12 b0 69 - 00 f0 fd 7f 78 4a 06 01  .......i....xJ..
01d2fc80  1c fd d2 01 dd c6 f8 77 - f0 12 b0 69 00 00 b0 69  .......w...i...i
01d2fc90  02 00 00 00 00 00 00 00 - 00 b0 fd 7f 00 f0 fd 7f  ................
01d2fca0  00 00 00 00 9e 34 f8 77 - 30 fd d2 01 30 fd d2 01  .....4.w0...0...
01d2fcb0  bc fc 5b 00 00 00 00 00 - 00 00 00 00 00 00 00 00  ..[.............
01d2fcc0  00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00  ................
01d2fcd0  00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00  ................
01d2fce0  00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00  ................


- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019