<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
</head>
<body dir="ltr">
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;font-family:Calibri,Helvetica,sans-serif;" dir="ltr">
<div id="divtagdefaultwrapper" dir="ltr" style="font-size: 12pt; color: rgb(0, 0, 0); font-family: Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols;">
<p>Ha, got it! This was a small regression in <span style="font-size:12pt">SmalltalkImage >> #processPreemptionYields from dtl 1/5/2021 19:29 (<span>System-dtl.1261). Fixed in <span>System-ct.1268. :-)</span></span></span><span style="font-size:12pt"></span></p>
<p><span></span></p>
<p><span><br>
</span></p>
<p><span>Best,</span></p>
<p><span>Christoph</span></p>
</div>
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" color="#000000" style="font-size:11pt"><b>Von:</b> Thiede, Christoph<br>
<b>Gesendet:</b> Donnerstag, 16. Dezember 2021 19:29:30<br>
<b>An:</b> squeak-dev<br>
<b>Betreff:</b> AW: [squeak-dev] Regression | Cannot interrupt "[ [] repeat ] fork" anymore</font>
<div> </div>
</div>
<div>
<div id="divtagdefaultwrapper" dir="ltr" style="font-size: 12pt; color: rgb(0, 0, 0); font-family: Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols;">
<div id="divtagdefaultwrapper" dir="ltr" style="font-size:12pt; color:rgb(0,0,0); font-family:Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols">
<p>Hi Dave, hi Marcel,</p>
<p><br>
</p>
<p>one "recent" change I noticed is that one to <span>SmalltalkImage>>#processPreemptionYields by Dave in May, which answered false before but answers true since then. But this is just an observation, I do not know whether this change was justified by a change
 on the VM side.</span></p>
<p><br>
</p>
<p>> <span>even if CMD+Dot interrupts the "[ [] repeat ] fork" from the interrupt watcher</span></p>
<p><span><br>
</span></p>
<p><span>How did you achieve to do this? The interrupt doesn't work for me in this situation.</span></p>
<p><span><br>
</span></p>
<p><span>Best,</span></p>
<p><span>Christoph</span></p>
<p><span><br>
</span></p>
</div>
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" color="#000000" style="font-size:11pt"><b>Von:</b> Squeak-dev <squeak-dev-bounces@lists.squeakfoundation.org> im Auftrag von Taeumel, Marcel<br>
<b>Gesendet:</b> Donnerstag, 16. Dezember 2021 15:53:37<br>
<b>An:</b> squeak-dev<br>
<b>Betreff:</b> Re: [squeak-dev] Regression | Cannot interrupt "[ [] repeat ] fork" anymore</font>
<div> </div>
</div>
<div>
<div id="__MailbirdStyleContent" dir="ltr" style="font-size:10pt; font-family:Arial; color:#000000; text-align:left">
Hi Christoph, hi Dave, hi all --
<div><br>
</div>
<div>"Processor preemptedProcess" does not behave as it used to be. It now answers the current ui process even if CMD+Dot interrupts the "<span style="font-size:10pt">[ [] repeat ] fork" from the interrupt watcher.</span></div>
<div><br>
</div>
<div>Maybe you can spot the issue right away?</div>
<div><br>
</div>
<div>ProcessorScheduler >> <span style="font-size:13.3333px">preemptedProcess</span></div>
<div><span style="font-size:13.3333px"><span style="white-space:pre"></span>"Return the process that the currently active process just preempted."</span></div>
<div><span style="white-space:pre; font-size:13.3333px"></span></div>
<div><span style="font-size:13.3333px"><span style="white-space:pre"></span>self activeProcess priority to: 1 by: -1 do: [:priority |</span></div>
<div><span style="font-size:13.3333px"><span style="white-space:pre"></span>(quiescentProcessLists at: priority) ifNotEmpty: [:list |</span></div>
<div><span style="font-size:13.3333px"><span style="white-space:pre"></span>^ Smalltalk processPreemptionYields</span></div>
<div><span style="font-size:13.3333px"><span style="white-space:pre"></span>ifTrue: [list last]</span></div>
<div><span style="font-size:13.3333px"><span style="white-space:pre"></span>ifFalse: [list first]]].</span></div>
<div><span style="font-size:13.3333px"><span style="white-space:pre"></span>^ nil</span></div>
<div><br>
</div>
<div>Best,</div>
<div>Marcel</div>
<div class="mb_sig"></div>
<blockquote class="history_container" type="cite" style="border-left-style:solid; border-width:1px; margin-top:20px; margin-left:0px; padding-left:10px; min-width:500px">
<p style="color:#AAAAAA; margin-top:10px">Am 16.12.2021 14:33:51 schrieb David T. Lewis <lewis@mail.msen.com>:</p>
<div style="font-family:Arial,Helvetica,sans-serif">On Thu, Dec 16, 2021 at 11:27:09AM +0100, Marcel Taeumel wrote:<br>
> Hi all --<br>
> <br>
> I am investigating a?? regression revealed via DebuggerTests >> test01UserInterrupt. One cannot interrupt "[ [] repeat ] fork" from a do-it anymore. :-(<br>
> <br>
> VM: 202112022203 (32-bit, Windows 10)<br>
> <br>
> Update: #20872<br>
> <br>
> Since the forked process should run at priority 40 and the "user interrupt watcher" watches at priority 60, this must work. Did we loose a process scheduling point in "[] repeat"? It's still implemented as "[self value. true] whileTrue".<br>
> <br>
<br>
Confirming on Linux and also on an interpreter VM with trunk level V3 image,<br>
so the issue is in the image, not the VM.<br>
<br>
Dave<br>
<br>
<br>
</div>
</blockquote>
</div>
</div>
</div>
</div>
</div>
</body>
</html>