<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
--></style>
</head>
<body class='hmmessage'>
ah, well now I've got 68 runs with an event amd /slight/ expansion of the giant lock -- in InnerWait I .release before Leave(giant).<BR>
Given that release almost immediates enter giant anyway, that doesn't seem a bad move.<BR>
 <BR>
It didn't hang at 68, it did:<BR>
 <BR>
***<BR>*** runtime error:<BR>***    An array subscript was out of range.<BR>***    file "..\src\vbt\VBTRep.m3", line 644<BR>***<BR>
Stack trace:<BR>   FP         PC      Procedure<BR>---------  ---------  -------------------------------<BR>0x207fef8   0xfb62a5  Redisplay + 0x3ae in ..\src\vbt\VBTRep.m3<BR>0x207ff24   0xfb5e34  UncoverRedisplay + 0xdd in ..\src\vbt\VBTRep.m3<BR>0x207ff4c   0xfb5ec5  RdApply + 0x8c in ..\src\vbt\VBTRep.m3<BR>0x207ff8c   0x5eacb9  RunThread + 0x184 in ..\src\thread\WIN32\ThreadWin32.m3<BR>0x207ffb4   0x5eaaea  ThreadBase + 0x33 in ..\src\thread\WIN32\ThreadWin32.m3<BR>.........  .........  ... more frames ...<BR>
C:\dev2\cm3.2\m3-libs\m3core>echo 69   && \cm3\bin\Juno.exe @M3no-trestle-await-<BR>delete<BR>69<BR>
C:\dev2\cm3.2\m3-libs\m3core>echo 70   && \cm3\bin\Juno.exe @M3no-trestle-await-<BR>delete<BR>70<BR>
 <BR>
I'll try again having put back the semaphore..<BR>
I rather suspect I have it fixed though and have uncovered some other problem.<BR>
 <BR>
 - Jay<BR> <BR>
<HR id=stopSpelling>
From: jay.krell@cornell.edu<BR>To: hosking@cs.purdue.edu<BR>Date: Tue, 29 Sep 2009 14:48:24 +0000<BR>CC: m3devel@elegosoft.com<BR>Subject: Re: [M3devel] win32 threads...now Juno sometimes hangs..<BR><BR>
<STYLE>
.ExternalClass .ecxhmmessage P
{padding:0px;}
.ExternalClass body.ecxhmmessage
{font-size:10pt;font-family:Verdana;}
</STYLE>
Tony..this semaphore with a maximum value of 1, that is a strange thing, isn't it?<BR>It could just be an event, right?<BR>I tried that..it took 50 runs to hang Juno..<BR> <BR> - Jay<BR> <BR>
<HR id=ecxstopSpelling>
From: jay.krell@cornell.edu<BR>To: hosking@cs.purdue.edu<BR>CC: m3devel@elegosoft.com<BR>Subject: RE: [M3devel] win32 threads...now Juno sometimes hangs..<BR>Date: Tue, 29 Sep 2009 14:23:07 +0000<BR><BR>
<STYLE>
.ExternalClass .ecxhmmessage P
{padding:0px;}
.ExternalClass body.ecxhmmessage
{font-size:10pt;font-family:Verdana;}
</STYLE>
ps: while I consider the whole stacksize thing broken anyway, notice that using an idle thread (which you had no choice about) got you an indeterminate stack size.<BR> <BR> - Jay<BR><BR>
<HR id=ecxecxstopSpelling>
From: jay.krell@cornell.edu<BR>To: hosking@cs.purdue.edu<BR>Date: Tue, 29 Sep 2009 14:16:11 +0000<BR>CC: m3devel@elegosoft.com<BR>Subject: Re: [M3devel] win32 threads...now Juno sometimes hangs..<BR><BR>
<STYLE>
.ExternalClass .ecxhmmessage P
{padding:0px;}
.ExternalClass body.ecxhmmessage
{font-size:10pt;font-family:Verdana;}
</STYLE>
small email truncation:<BR> <BR>>> We need some sort of stress or fault-injection or variation-injection tests.<BR>>> Run threads deterministically in every combination of order, for example.<BR><BR><BR> - Jay<BR><BR>                                           </body>
</html>