<div>+ rodney.m.bates@</div><div> </div><div>Hi!</div><div><br /></div><div><br /></div><div> 1)</div><div><div style="font-family:'helvetica neue' , 'helvetica' , 'arial' , sans-serif;font-size:16px">Today I try build whole i386_DJGPP.</div><div style="font-family:'helvetica neue' , 'helvetica' , 'arial' , sans-serif;font-size:16px"> ( I have single file cm3.exe and cm3.cfg. And VM with FreeDOS 1.3 and compilers and Co. )</div><div style="font-family:'helvetica neue' , 'helvetica' , 'arial' , sans-serif;font-size:16px"><br /></div><div style="font-family:'helvetica neue' , 'helvetica' , 'arial' , sans-serif;font-size:16px"> But I have some troubles.</div><div style="font-family:'helvetica neue' , 'helvetica' , 'arial' , sans-serif;font-size:16px">May be cab sense public "etalon" bibary distributive on Github? ( inside Releases)</div><div style="font-family:'helvetica neue' , 'helvetica' , 'arial' , sans-serif;font-size:16px"><br /></div><div style="font-family:'helvetica neue' , 'helvetica' , 'arial' , sans-serif;font-size:16px"><br /></div><div style="font-family:'helvetica neue' , 'helvetica' , 'arial' , sans-serif;font-size:16px"> 2) I see new Issue #1018 </div><div style="font-family:'helvetica neue' , 'helvetica' , 'arial' , sans-serif;font-size:16px"> It's dated <a href="tel:2022-03-30">2022-03-30</a>.</div><div style="font-family:'helvetica neue' , 'helvetica' , 'arial' , sans-serif;font-size:16px"><br /></div><div style="font-family:'helvetica neue' , 'helvetica' , 'arial' , sans-serif;font-size:16px"> Who can help Mika Nystrom with AMD64_LINUX ?</div></div><div><br /></div><div><br /></div><div> I will try build .deb on Debian 11.X.</div><div>If fail then on Debian 10.X or Debian 8.X</div><div><br /></div><div> But this can take 2-3 days or whole week.</div><div>( I need prepare VM and free some disk space)</div><div><br /></div><div><br /></div><div>Best regards, Victor Miasnikov</div><div><br /></div><div><br /></div><div>07.02.2022, 13:07, "Jay K" <jayk123@hotmail.com>:</div><blockquote><div dir="ltr">
<div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">
Ok, I'm sorry to be so anecdotal and non-scientific and
<div>circumstantial, but there is something wrong with the coroutine</div>
<div>support in PThreadThread.m3.</div>
<div><br />
</div>
<div>I don't know what it is.</div>
<div><br />
</div>
<div>Details:</div>
<div><br />
</div>
<div>You know, all the targets are about the same, modulo</div>
<div>endian, word size, Unix vs. Windows.</div>
<div><br />
</div>
<div>So building cm3 for AMD64_OPENBSD is trivial.</div>
<div>Just use the AMD64_LINUX bootstrap.</div>
<div><br />
</div>
<div>Then, if you use that to build m3core, there was almost</div>
<div>100% failure rate. I always saw DisposeStacks on the stack.</div>
<div>It was freeing 0xfdfdfdfdfdfd or some close variation.</div>
<div>Presumably this is "poison" OpenBSD puts in free memory.</div>
<div><br />
</div>
<div>Failure rate is higher with cm3 -commands I think, because</div>
<div>I think that allocates more, runs GC more. Not sure.</div>
<div><br />
</div>
<div>So what I have done is, Coroutines are still enabled</div>
<div>under their original Linux/amd64, which they never were</div>
<div>otherwise, but the "data structures" (an overstatement)</div>
<div>in PThreadThread are restored to what they were before,</div>
<div>except on Linux/amd64. It is a little messy.</div>
<div>I tried sticking with the pointer and setting it to the inline record (including</div>
<div>with the next field).</div>
<div>That failed. I imagined I had broken some Modula-3 contract, but</div>
<div>maybe it was something else. I can try that again.</div>
<div><br />
</div>
<div>My 100% crash is now 0%.</div>
<div><br />
</div>
<div>OpenBSD/amd64 should be good again.</div>
<div><br />
</div>
<div>So my requests are then..</div>
<div><br />
</div>
<div> - Someone else please debug it?</div>
<div><br />
</div>
<div> - Someone else read the code thoroughly?</div>
<div> I admit I made some changes, but small ones, of course. :)</div>
<div> The changes I made were:</div>
<div> - Converge source across all targets.</div>
<div> - Stop using stack from returned functions.</div>
<div><br />
</div>
<div> - Can we change it to be disabled even on Linux/amd64?</div>
<div> i.e. Coroutine__Supported always return FALSE?</div>
<div> We can leave the code in, I guess.</div>
<div> Anyone can change it to true locally if they want.</div>
<div> </div>
<div> - Consider, consider, maybe, removing it entirely.</div>
<div><br />
</div>
<div>I will also try moving Cygwin to pthreads.</div>
<div>This might have been why that was failing, and I moved to Win32 threads.</div>
<div>It is a hybrid of Windows and Unix, either way, so either threads are ok.</div>
<div>(Though moving to pthreads might be good..in that..Cygwin dropped XP support</div>
<div>and we have not. <span id="78cfd4d2c50ed68c9d588db6819f9520🙂">🙂</span> (They are dropping 32bit and pre-Win8.1 also.))</div>
<div><br />
</div>
- Jay<br />
</div>
<div>
<div id="dd8fcbc3886f6beba9d56dd35eeb1be5appendonsend"></div>
<div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">
<br />
</div>
<hr style="display:inline-block;width:98%" />
<div id="f2e387f28ef856c18dfa722bbcbb9bfadivRplyFwdMsg" dir="ltr"><font color="#000000" face="Calibri, sans-serif" style="font-size:11pt"><b>From:</b> Jay K<br />
<b>Sent:</b> Sunday, February 6, 2022 11:03 PM<br />
<b>To:</b> Mika Nystrom <<a href="mailto:mika.nystrom@gmail.com" target="_blank">mika.nystrom@gmail.com</a>>; m3devel <<a href="mailto:m3devel@elegosoft.com" target="_blank">m3devel@elegosoft.com</a>><br />
<b>Subject:</b> pthreads coroutines problem on OpenBSD, Cygwin</font>
<div> </div>
</div>
<div dir="ltr">
<div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt"> ...</div></div></div></div><p>_______________________________________________<br />M3devel mailing list<br /><a href="mailto:M3devel@elegosoft.com" target="_blank">M3devel@elegosoft.com</a><br /><a href="https://m3lists.elegosoft.com/mailman/listinfo/m3devel" target="_blank">https://m3lists.elegosoft.com/mailman/listinfo/m3devel</a><br /></p></blockquote>