<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
--></style>
</head>
<body class='hmmessage'>
ok, it's not always 12 bytes in and 4b4. but anyway..<BR>
Tony does this make sense? And the atached?<BR>
I seem to have it failing on an almost consistent address now.<BR>
So I set write breakpoints "around" it.<BR>
The object is often at 0x1cf0008.<BR>
So I set write breakpoints at 0x1cf0000, 0x1cf0004, 0x1cf0008.<BR>
All the writes are within RTCollector.<BR>
Hm. Or so I thought. The first few are not always.<BR>
Surely some of the writes are correct.<BR>
And some are not?<BR>
I attached a debugging log.<BR>
<BR>
It just goes like:<BR>
bp main<BR>
g<BR>
ba w4 0x1cf0000 "k;g"<BR>
ba w4 0x1cf0004 "k;g"<BR>
ba w4 0x1cf0008 "k;g"<BR>
g<BR>
<BR>
I also tried:<BR>
ba w4 0x1cf0008 "~*k;g"<BR>
etc.<BR>
to get all stacks but it didn't seem useful.<BR>
You know, what if two threads touch an address at about the same time?<BR>
The debugger might be ambiguous. But it seems nothing else was nearby.<BR>
<BR>
<BR>
- Jay<BR><BR><BR><BR> <BR>
<HR id=stopSpelling>
From: jay.krell@cornell.edu<BR>To: hosking@cs.purdue.edu; m3devel@elegosoft.com<BR>Date: Sat, 31 Oct 2009 14:21:43 +0000<BR>Subject: Re: [M3devel] debugging paranoidgc?<BR><BR>
<STYLE>
.ExternalClass .ecxhmmessage P
{padding:0px;}
.ExternalClass body.ecxhmmessage
{font-size:10pt;font-family:Verdana;}
</STYLE>
The pointer is always 12 bytes into a page.<BR>The typecode is always 0x4b4. I'll see what type that is.<BR> <BR> - Jay<BR><BR> <BR>
<HR id=ecxstopSpelling>
From: jay.krell@cornell.edu<BR>To: hosking@cs.purdue.edu; m3devel@elegosoft.com<BR>Date: Sat, 31 Oct 2009 13:40:30 +0000<BR>Subject: [M3devel] debugging paranoidgc?<BR><BR>
<STYLE>
.ExternalClass .ecxhmmessage P
{padding:0px;}
.ExternalClass body.ecxhmmessage
{font-size:10pt;font-family:Verdana;}
</STYLE>
I'm not sure why/what-changed and maybe this is good, maybe this is bad, but Juno is now crashing for me every time on Windows with @paranoidgc. Tips to debug it?<BR> <BR> <BR>Microsoft (R) Windows Debugger Version 6.9.0003.113 X86<BR>Copyright (c) Microsoft Corporation. All rights reserved.<BR>CommandLine: C:\cm3\bin\Juno.exe @M3no-trestle-await-delete @M3paranoidgc<BR>Symbol search path is: SRV*C:\symbols*http://msdl.microsoft.com/download/symbols<BR>Executable search path is:<BR>ModLoad: 00400000 004c7000 Juno.exe<BR>ModLoad: 7c900000 7c9b2000 ntdll.dll<BR>ModLoad: 7c800000 7c8f6000 C:\WINDOWS2\system32\kernel32.dll<BR>ModLoad: 10000000 10063000 C:\cm3\bin\juno-compiler.dll<BR>ModLoad: 00330000 00360000 C:\cm3\bin\juno-machine.dll<BR>ModLoad: 004d0000 005bc000 C:\cm3\bin\m3.dll<BR>ModLoad: 005c0000 00e36000 C:\cm3\bin\m3core.dll<BR>ModLoad: 5d090000 5d12a000 C:\WINDOWS2\system32\comctl32.dll<BR>ModLoad: 77dd0000 77e6b000 C:\WINDOWS2\system32\ADVAPI32.dll<BR>ModLoad: 77e70000 77f02000 C:\WINDOWS2\system32\RPCRT4.dll<BR>ModLoad: 77fe0000 77ff1000 C:\WINDOWS2\system32\Secur32.dll<BR>ModLoad: 77f10000 77f59000 C:\WINDOWS2\system32\GDI32.dll<BR>ModLoad: 7e410000 7e4a1000 C:\WINDOWS2\system32\USER32.dll<BR>ModLoad: 77c10000 77c68000 C:\WINDOWS2\system32\MSVCRT.dll<BR>ModLoad: 71ad0000 71ad9000 C:\WINDOWS2\system32\wsock32.dll<BR>ModLoad: 71ab0000 71ac7000 C:\WINDOWS2\system32\WS2_32.dll<BR>ModLoad: 71aa0000 71aa8000 C:\WINDOWS2\system32\WS2HELP.dll<BR>ModLoad: 5b860000 5b8b5000 C:\WINDOWS2\system32\netapi32.dll<BR>ModLoad: 00360000 003b8000 C:\cm3\bin\m3formsvbt.dll<BR>ModLoad: 003c0000 003ce000 C:\cm3\bin\m3formsvbtpixmaps.dll<BR>ModLoad: 00e40000 00f14000 C:\cm3\bin\m3vbtkit.dll<BR>ModLoad: 00f20000 00fd5000 C:\cm3\bin\m3ui.dll<BR>ModLoad: 003d0000 003d6000 C:\cm3\bin\videovbt.dll<BR>ModLoad: 003e0000 003e5000 C:\cm3\bin\jvideo.dll<BR>ModLoad: 003f0000 003f9000 C:\cm3\bin\web.dll<BR>ModLoad: 00fe0000 00fed000 C:\cm3\bin\m3tcp.dll<BR>ModLoad: 00ff0000 0101d000 C:\cm3\bin\m3netobj.dll<BR>ModLoad: 76390000 763ad000 C:\WINDOWS2\system32\IMM32.DLL<BR>ModLoad: 629c0000 629c9000 C:\WINDOWS2\system32\LPK.DLL<BR>ModLoad: 74d90000 74dfb000 C:\WINDOWS2\system32\USP10.dll<BR>ModLoad: 74720000 7476c000 C:\WINDOWS2\system32\MSCTF.dll<BR>ModLoad: 77c00000 77c08000 C:\WINDOWS2\system32\version.dll<BR>ModLoad: 755c0000 755ee000 C:\WINDOWS2\system32\msctfime.ime<BR>ModLoad: 774e0000 7761d000 C:\WINDOWS2\system32\ole32.dll<BR>ModLoad: 77120000 771ab000 C:\WINDOWS2\system32\OLEAUT32.DLL<BR><BR>***<BR>*** runtime error:<BR>*** <*ASSERT*> failed.<BR>*** file "..\src\runtime\common\RTCollector.m3", line 1729<BR>***<BR>Stack trace:<BR> FP PC Procedure<BR>--------- --------- -------------------------------<BR> 0x12f700 0x5d2a4f CleanOlderRefSanityCheck + 0xa2 in ..\src\runtime\common\R<BR>TCollector.m3<BR> 0x12f744 0x5cb101 Walk + 0x467 in ..\src\runtime\common\RTHeapMap.m3<BR> 0x12f768 0x5ca9da DoWalkRef + 0x62 in ..\src\runtime\common\RTHeapMap.m3<BR> 0x12f78c 0x5ca9b5 DoWalkRef + 0x3d in ..\src\runtime\common\RTHeapMap.m3<BR> 0x12f7b8 0x5ca970 WalkRef + 0x100 in ..\src\runtime\common\RTHeapMap.m3<BR> 0x12f7f4 0x5d266b SanityCheck + 0x1ec in ..\src\runtime\common\RTCollector.m<BR>3<BR> 0x12f80c 0x5d2471 After + 0x1b in ..\src\runtime\common\RTCollector.m3<BR> 0x12f82c 0x5cb7d8 InvokeMonitors + 0x143 in ..\src\runtime\common\RTHeapRep.<BR>m3<BR> 0x12f860 0x5d0b13 CollectSomeInStateFive + 0x265 in ..\src\runtime\common\RT<BR>Collector.m3<BR> 0x12f874 0x5d01c1 CollectSome + 0xa0 in ..\src\runtime\common\RTCollector.m3<BR>......... ......... ... more frames ...<BR>(d40.9d8): Break instruction exception - code 80000003 (first chance)<BR>eax=00000001 ebx=000006c1 ecx=0000d8df edx=7c90e514 esi=0012f4f0 edi=005e5d8b<BR>eip=7c90120e esp=0012f4d8 ebp=0012f4f0 iopl=0 nv up ei pl nz na po nc<BR>cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00000202<BR>ntdll!DbgBreakPoint:<BR>7c90120e cc int 3<BR>0:000> .lines<BR>Line number information will be loaded<BR>0:000> ~*k999<BR>. 0 Id: d40.9d8 Suspend: 1 Teb: 7ffdf000 Unfrozen<BR>ChildEBP RetAddr<BR>0012f4d4 005e5dd7 ntdll!DbgBreakPoint<BR>0012f4f0 005dc2ce m3core!RTOS__Crash+0x4c [..\src\runtime\WIN32\RTOS.m3 @ 29]<BR>0012f508 005da01e m3core!RTProcess__Crash+0x68 [..\src\runtime\common\RTProcess.<BR>m3 @ 66]<BR>0012f520 005d9d32 m3core!RTError__EndError+0x37 [..\src\runtime\common\RTError.m<BR>3 @ 118]<BR>0012f538 005da5f1 m3core!RTError__MsgS+0x8d [..\src\runtime\common\RTError.m3 @<BR>40]<BR>0012f580 005da371 m3core!RTException__Crash+0x1ee [..\src\runtime\common\RTExcep<BR>tion.m3 @ 79]<BR>0012f5b8 005da2d1 m3core!RTException__DefaultBackstop+0x6f [..\src\runtime\commo<BR>n\RTException.m3 @ 39]<BR>0012f5d4 005e7823 m3core!RTException__InvokeBackstop+0x28 [..\src\runtime\common<BR>\RTException.m3 @ 25]<BR>0012f600 005da3fb m3core!RTException__Raise+0x63 [..\src\runtime\ex_frame\RTExFr<BR>ame.m3 @ 29]<BR>0012f630 005da2d1 m3core!RTException__DefaultBackstop+0xf9 [..\src\runtime\commo<BR>n\RTException.m3 @ 47]<BR>0012f64c 005e7823 m3core!RTException__InvokeBackstop+0x28 [..\src\runtime\common<BR>\RTException.m3 @ 25]<BR>0012f678 005c5559 m3core!RTException__Raise+0x63 [..\src\runtime\ex_frame\RTExFr<BR>ame.m3 @ 29]<BR>0012f6bc 005d765d m3core!RTHooks__ReportFault+0x93 [..\src\runtime\common\RTHook<BR>s.m3 @ 110]<BR>0012f6cc 005d2a4f m3core!MM_RTCollector_CRASH+0x11 [..\src\runtime\common\RTColl<BR>ector.m3 @ 393]<BR>0012f700 005cb101 m3core!RTCollector__CleanOlderRefSanityCheck+0xa2 [..\src\runt<BR>ime\common\RTCollector.m3 @ 1730]<BR>0012f744 005ca9da m3core!RTHeapMap__Walk+0x467 [..\src\runtime\common\RTHeapMap.<BR>m3 @ 202]<BR>0012f768 005ca9b5 m3core!RTHeapMap__DoWalkRef+0x62 [..\src\runtime\common\RTHeap<BR>Map.m3 @ 62]<BR>0012f78c 005ca970 m3core!RTHeapMap__DoWalkRef+0x3d [..\src\runtime\common\RTHeap<BR>Map.m3 @ 57]<BR>0012f7b8 005d266b m3core!RTHeapMap__WalkRef+0x100 [..\src\runtime\common\RTHeapM<BR>ap.m3 @ 47]<BR>0012f7f4 005d2471 m3core!RTCollector__SanityCheck+0x1ec [..\src\runtime\common\R<BR>TCollector.m3 @ 1658]<BR>0012f80c 005cb7d8 m3core!RTCollector__After+0x1b [..\src\runtime\common\RTCollec<BR>tor.m3 @ 1630]<BR>0012f82c 005d0b13 m3core!RTHeapRep__InvokeMonitors+0x143 [..\src\runtime\common\<BR>RTHeapRep.m3 @ 59]<BR>0012f860 005d01c1 m3core!RTCollector__CollectSomeInStateFive+0x265 [..\src\runti<BR>me\common\RTCollector.m3 @ 983]<BR>0012f874 005cfe26 m3core!RTCollector__CollectSome+0xa0 [..\src\runtime\common\RT<BR>Collector.m3 @ 724]<BR>0012f8b8 005c802c m3core!RTHeapRep__CollectEnough+0x9b [..\src\runtime\common\RT<BR>Collector.m3 @ 654]<BR>0012f8f8 005c7643 m3core!RTAllocator__AllocTraced+0xd7 [..\src\runtime\common\RT<BR>Allocator.m3 @ 366]<BR>0012f92c 005c713d m3core!RTAllocator__GetTracedObj+0x8c [..\src\runtime\common\R<BR>TAllocator.m3 @ 224]<BR>0012f950 1000f8a8 m3core!RTHooks__AllocateTracedObj+0x15 [..\src\runtime\common\<BR>RTAllocator.m3 @ 120]<BR>0012f994 0041fd5b juno_compiler!JunoCompile__ProcDecl+0x1de [..\src\JunoCompile.<BR>m3 @ 254]<BR>0012f9cc 00420909 Juno!Editor__Pass2+0x216 [..\src\Editor.m3 @ 730]<BR>0012fa80 004207a1 Juno!Editor__Compile2+0x158 [..\src\Editor.m3 @ 813]<BR>0012fab4 00444391 Juno!Editor__Compile+0x53 [..\src\Editor.m3 @ 793]<BR>0012faf4 004445c6 Juno!Juno__CompileEditor+0x2c [..\src\Juno.m3 @ 140]<BR>0012fb94 00445017 Juno!Juno__CompileModule+0x14a [..\src\Juno.m3 @ 174]<BR>0012fd54 0045494c Juno!Juno__CompileModules+0x2e5 [..\src\Juno.m3 @ 263]<BR>0012fed4 005d8cf4 Juno!Juno_M3+0x251e [..\src\Juno.m3 @ 2134]<BR>0012ff18 005d82cc m3core!RTLinker__RunMainBody+0x25a [..\src\runtime\common\RTLi<BR>nker.m3 @ 399]<BR>0012ff30 005d8375 m3core!RTLinker__AddUnitI+0xf7 [..\src\runtime\common\RTLinker<BR>.m3 @ 113]<BR>0012ff54 00401038 m3core!RTLinker__AddUnit+0xa1 [..\src\runtime\common\RTLinker.<BR>m3 @ 122]<BR>0012ff70 004ba44f Juno!main+0x38 [_m3main.mc @ 4]<BR>0012ffc0 7c817077 Juno!mainCRTStartup+0xff<BR>0012fff0 00000000 kernel32!BaseProcessStart+0x23<BR> 1 Id: d40.fdc Suspend: 1 Teb: 7ffde000 Unfrozen<BR>ChildEBP RetAddr<BR>01a0ff84 7c90df4a ntdll!KiFastSystemCallRet<BR>01a0ff88 5b891374 ntdll!ZwWaitForMultipleObjects+0xc<BR>01a0ffb4 7c80b729 netapi32!NetbiosWaiter+0x73<BR>01a0ffec 00000000 kernel32!BaseThreadStart+0x37<BR> 2 Id: d40.e08 Suspend: 2 Teb: 7ffdd000 Unfrozen<BR>ChildEBP RetAddr<BR>01b0fecc 7e4191be ntdll!KiFastSystemCallRet<BR>01b0fef4 00f2cb35 USER32!NtUserGetMessage+0xc<BR>01b0ff4c 005eaade m3ui!WinTrestle__MessengerApply+0x272 [..\src\winvbt\WinTrestl<BR>e.m3 @ 2448]<BR>01b0ff8c 005ea8fe m3core!ThreadWin32__RunThread+0x195 [..\src\thread\WIN32\Threa<BR>dWin32.m3 @ 524]<BR>01b0ffb4 7c80b729 m3core!ThreadWin32__ThreadBase+0x33 [..\src\thread\WIN32\Threa<BR>dWin32.m3 @ 504]<BR>01b0ffec 00000000 kernel32!BaseThreadStart+0x37<BR>0:000><BR><BR><BR><BR>Out of ignorance I might try to remove Trestle uses and see if it still crashes.<BR>But that might also be difficult.<BR>(I did remove the filewatcher and metermaid threads.)<BR> <BR> <BR> - Jay<BR> </body>
</html>