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 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit 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 Precedence: bulk > 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! 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 *----> 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 ................