For the second time in two days, I was stuck in the following situation after pressing interrupt multiple times and my image froze irrecoverably:
[cid:bf8bfc45-aff3-4132-9510-d8802537c162]
I don't know what's going on here. Did the interrupt block a critical section that is used by a higher-level process such as the timer event loop? Unfortunately no SqueakDebug.log was produced. How can we investigate & fix this?
Best, Christoph
Hi all,
I encountered this issue again and was able to reproduce it:
"Warning: this will irrecoverably freeze your image!" d := 0 seconds asDelay. 10000000 timesRepeat: [d wait]. "now interrupt"
This freeze seems to be related to interrupting Delay>>schedule before TimingSemaphore has been signaled. Apparently, I can fix the issue by inserting a "0 seconds wait" prior to "^ interruptSemaphore signal" in EventSensor>>#processEvent:. But while this seems to work for me, this solution seems unelegant and I cannot offer a fully grounded explanation at the moment, so maybe someone else could take a look at this? :-)
Best, Christoph
--- Sent from Squeak Inbox Talk
On 2023-07-02T19:23:40+00:00, christoph.thiede@student.hpi.uni-potsdam.de wrote:
For the second time in two days, I was stuck in the following situation after pressing interrupt multiple times and my image froze irrecoverably:
[cid:bf8bfc45-aff3-4132-9510-d8802537c162]
I don't know what's going on here. Did the interrupt block a critical section that is used by a higher-level process such as the timer event loop? Unfortunately no SqueakDebug.log was produced. How can we investigate & fix this?
Best, Christoph
Hi Christoph --
Until we can better understand what actually happens, I would not call this a "solution" :-)
Do you have a more useful example where this bug occurs?
Best, Marcel
Am 04.12.2023 17:37:35 schrieb Thiede, Christoph christoph.thiede@student.hpi.uni-potsdam.de:
Hi all,
I encountered this issue again and was able to reproduce it:
"Warning: this will irrecoverably freeze your image!" d := 0 seconds asDelay. 10000000 timesRepeat: [d wait]. "now interrupt"
This freeze seems to be related to interrupting Delay>>schedule before TimingSemaphore has been signaled. Apparently, I can fix the issue by inserting a "0 seconds wait" prior to "^ interruptSemaphore signal" in EventSensor>>#processEvent:. But while this seems to work for me, this solution seems unelegant and I cannot offer a fully grounded explanation at the moment, so maybe someone else could take a look at this? :-)
Best, Christoph
--- Sent from Squeak Inbox Talk
On 2023-07-02T19:23:40+00:00, christoph.thiede@student.hpi.uni-potsdam.de wrote:
For the second time in two days, I was stuck in the following situation after pressing interrupt multiple times and my image froze irrecoverably:
[cid:bf8bfc45-aff3-4132-9510-d8802537c162]
I don't know what's going on here. Did the interrupt block a critical section that is used by a higher-level process such as the timer event loop? Unfortunately no SqueakDebug.log was produced. How can we investigate & fix this?
Best, Christoph
I can interrupt this once, then the image freezes: [cid:eb72605b-096f-4159-807a-c3d4a75083c3]
[0 seconds wait] repeat.
Am 04.12.2023 18:39:49 schrieb Marcel marcel.taeumel@hpi.uni-potsdam.de:
Hi Christoph --
Until we can better understand what actually happens, I would not call this a "solution" :-)
Do you have a more useful example where this bug occurs?
Best, Marcel
Am 04.12.2023 17:37:35 schrieb Thiede, Christoph christoph.thiede@student.hpi.uni-potsdam.de:
Hi all,
I encountered this issue again and was able to reproduce it:
"Warning: this will irrecoverably freeze your image!" d := 0 seconds asDelay. 10000000 timesRepeat: [d wait]. "now interrupt"
This freeze seems to be related to interrupting Delay>>schedule before TimingSemaphore has been signaled. Apparently, I can fix the issue by inserting a "0 seconds wait" prior to "^ interruptSemaphore signal" in EventSensor>>#processEvent:. But while this seems to work for me, this solution seems unelegant and I cannot offer a fully grounded explanation at the moment, so maybe someone else could take a look at this? :-)
Best, Christoph
--- Sent from Squeak Inbox Talk
On 2023-07-02T19:23:40+00:00, christoph.thiede@student.hpi.uni-potsdam.de wrote:
For the second time in two days, I was stuck in the following situation after pressing interrupt multiple times and my image froze irrecoverably:
[cid:bf8bfc45-aff3-4132-9510-d8802537c162]
I don't know what's going on here. Did the interrupt block a critical section that is used by a higher-level process such as the timer event loop? Unfortunately no SqueakDebug.log was produced. How can we investigate & fix this?
Best, Christoph
Hi Marcel,
yes, this is the observation I meant.
Unfortunately, my "solution" is not so good either, as it keeps debuggers from appearing in rare cases. Not sure how we could fix that ... Cmd+dot should work for processes of any priority, and yet, the interrupt handler itself seems to yield the processor at some point ...
Best, Christoph
--- Sent from Squeak Inbox Talk
On 2023-12-04T17:46:17+00:00, marcel.taeumel@hpi.de wrote:
I can interrupt this once, then the image freezes: [cid:eb72605b-096f-4159-807a-c3d4a75083c3]
[0 seconds wait] repeat.
Am 04.12.2023 18:39:49 schrieb Marcel <marcel.taeumel(a)hpi.uni-potsdam.de>:
Hi Christoph --
Until we can better understand what actually happens, I would not call this a "solution" :-)
Do you have a more useful example where this bug occurs?
Best, Marcel
Am 04.12.2023 17:37:35 schrieb Thiede, Christoph <christoph.thiede(a)student.hpi.uni-potsdam.de>:
Hi all,
I encountered this issue again and was able to reproduce it:
"Warning: this will irrecoverably freeze your image!" d := 0 seconds asDelay. 10000000 timesRepeat: [d wait]. "now interrupt"
This freeze seems to be related to interrupting Delay>>schedule before TimingSemaphore has been signaled. Apparently, I can fix the issue by inserting a "0 seconds wait" prior to "^ interruptSemaphore signal" in EventSensor>>#processEvent:. But while this seems to work for me, this solution seems unelegant and I cannot offer a fully grounded explanation at the moment, so maybe someone else could take a look at this? :-)
Best, Christoph
Sent from Squeak Inbox Talk
On 2023-07-02T19:23:40+00:00, christoph.thiede(a)student.hpi.uni-potsdam.de wrote:
For the second time in two days, I was stuck in the following situation after pressing interrupt multiple times and my image froze irrecoverably:
[cid:bf8bfc45-aff3-4132-9510-d8802537c162]
I don't know what's going on here. Did the interrupt block a critical section that is used by a higher-level process such as the timer event loop? Unfortunately no SqueakDebug.log was produced. How can we investigate & fix this?
Best, Christoph
squeak-dev@lists.squeakfoundation.org