<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<br>
I can help you a bit only on this point:<br>
"- is there a way of introducing network delays in Mac OS that might
help me induce the bug?"<br>
<br>
Yes, in theory it is possible. Some time ago I red the documentation
of 'dummynet' in FreeBSD for the firewall 'ipfw', it seemed to be
very interesting but I never had occasion to use it.<br>
<br>
Now, Apple Unix is in large part taken from FreeBSD => I check if
they took also dummynet:<br>
macOS> apropos dummynet<br>
dummynet(4) .... <br>
<br>
So, yes, it is there.<br>
<br>
HTH<br>
<br>
bye<br>
Nicola<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<div><br>
</div>
<div class="moz-cite-prefix">On 9/13/19 8:15 PM, Eliot Miranda
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:CAC20JE2pH9rPxi_2DYeeu59nk5959H3c+YytAmam0edTR4DcGA@mail.gmail.com">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<div dir="ltr">
<div dir="ltr">
<div dir="ltr">
<div dir="ltr">
<div dir="ltr">Hi All,<br>
<div><br>
</div>
<div> there is a VM bug in 64-bit Spur with the Sista
V1 bytecode set and full blocks. The symptom is that
when waiting for a remote Monticello repository to
update and/or deliver a package version the system
crashes in JITTED code after what appears to be some
kind of wait.</div>
<div><br>
</div>
<div>This is a reliably occurring bug b ut maddeningly
difficult to reproduce. The bug reliably occurs when
interacting with a remote rep[ository (e.g. <a
href="http://source.squeak.org/VMMaker"
moz-do-not-send="true">http://source.squeak.org/VMMaker</a>)
when the server is "cold", and hence makes the image
wait. Every time I have tried to repeat the failing
sequence the crash has not occurre3d, I think because
the server is now "hot" and serves up the version
quickly. Today I even tried shutting down my machine
for over an hour and rebooting. But I could not get
the crash to occur even though it seems to me that
every time I try it the first time in the4 day it does
crash.</div>
<div><br>
</div>
<div>This is an important bug to fix. If it cannot be
fixed then full blocks and Sista V1 are not ready for
use in the upcoming Squeak release. I am looking for
help in debugging this.</div>
<div><br>
</div>
<div>- is anyone else uising the 64-bit VM with full
blocks and Sista V1 who sees hard VM crashes? If so,
under what circumstances?</div>
<div><br>
</div>
<div>- is it possible to flush caches in the <a
href="http://source.squeak.org/VMMaker"
moz-do-not-send="true">http://source.squeak.org/VMMaker</a>
server, or could people tolerate me rebooting the
server?</div>
<div><br>
</div>
<div>- is there a way of introducing network delays in
Mac OS that might help me induce the bug?</div>
<div><br>
</div>
<div>- can anyone think of any other strategies I might
take to try and reproduce this?</div>
<div><br>
</div>
<div>I may have to try and reproduce e the bug in the
simulator to have a chance of identifying the bug.
Does anyone have a good enough mental model of the
Monticello server interaction and have energy to help
me figure this one out?</div>
<div><br>
</div>
<div>Here is some information from the last crash I did
see in the debugger (alas it is incomplete; there are
a number of additional pieces of info I could have
collected).</div>
<div><br>
</div>
<div>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">(lldb)
thr b</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">*
thread #1, queue = 'com.apple.main-thread', stop
reason = EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP,
subcode=0x0)</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">
* frame #0: 0x000000010de5700a</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">
frame #1: 0x000000010dd7b174</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">
frame #2: 0x000000010dd45f1c</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">
frame #3: 0x000000010dd44534</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">
frame #4: 0x000000010dd44c60</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">(lldb)
x/10i 0x000000010de5700a</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica;min-height:14px"><br>
</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">(lldb)
call printStackCallStackOf($rbp)</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">
0x7ffeefbdfc30 M Heap>upHeap: 0x11273ca90: a(n)
Heap</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">
0x7ffeefbdfc68 M Heap>add: 0x11273ca90: a(n)
Heap</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">
0x7ffeefbdfca0 M Delay
class>scheduleDelay:from: 0x1123ebfb8: a(n) Delay
class</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">
0x7ffeefbdfcf0 M Delay class>handleTimerEvent
0x1123ebfb8: a(n) Delay class</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">
0x7ffeefbdfd20 M Delay class>runTimerEventLoop
0x1123ebfb8: a(n) Delay class</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica;min-height:14px"><br>
</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">(lldb)
x/10i 0x000000010dd7b174</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">
0x10dd7b174: 48 8b 55 10 movq 0x10(%rbp), %rdx</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">
0x10dd7b178: 48 89 ec movq %rbp, %rsp</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">
0x10dd7b17b: 5d popq %rbp</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">
0x10dd7b17c: c2 10 00 retq $0x10</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">
0x10dd7b17f: cc int3</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">
0x10dd7b180: cc int3</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">
0x10dd7b181: cc int3</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">
0x10dd7b182: cc int3</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">
0x10dd7b183: cc int3</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">
0x10dd7b184: cc int3</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">(lldb)
print whereIs(0x000000010dd7b174)</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">(char
*) $0 = 0x00000001000f83ff " is in generated
methods"</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica"><span
style="font-size:12px">(lldb) call
printCogMethodFor((void *)0x000000010dd7b174)</span><br>
</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">
0x10dd7afc0 <-> 0x10dd7b198:
method: 0x112f23c10 selector:
0x112232c20 add:</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">(lldb)
print whereIs(0x000000010de5700a)</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">(char
*) $1 = 0x00000001000f83ff " is in generated
methods"</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">(lldb)
call printCogMethodFor((void *)0x000000010de5700a)</p>
<p
style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal;font-family:Helvetica">
0x10de56ba0 <-> 0x10de57078:
method: 0x1126ec218 prim 23856 selector:
0x7ffeefbf3d20</p>
</div>
<div><br>
</div>
<div>this method ends up being the fitted version of
Delay class>><span
style="font-family:Helvetica;font-size:12px"> startTimerEventLoop</span></div>
<div dir="ltr" class="gmail_signature">
<div dir="ltr">
<div><span
style="font-size:small;border-collapse:separate">
<div>_,,,^..^,,,_<br>
</div>
<div>best, Eliot</div>
</span></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<pre class="moz-quote-pre" wrap="">
</pre>
</blockquote>
<br>
</body>
</html>