Mantis Bugtracker
  

Viewing Issue Advanced Details Jump to Notes ] View Simple ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0006588 [Squeak] Kernel block random 08-02-07 11:36 12-01-08 23:03
Reporter al View Status public  
Assigned To
Priority high Resolution fixed Platform
Status closed   OS
Projection none   OS Version
ETA none Fixed in Version 3.10 Product Version 3.10
  Product Build
Summary 0006588: Broken Semaphore>>critical: leads to frozen processes in Delay
Description David Shaffer: VNC doesn't respond to UI events, 0% cpu usage, several processes frozen in Delay although our Seaside server still responds.

Andreas Raab: You're missing another batch of fixes that we have long applied to our servers. In this case it's the handling of Semaphore>>critical: (which is broken in all Squeak versions).
Steps To Reproduce
Additional Information See mail http://lists.squeakfoundation.org/pipermail/squeak-dev/2007-July/119082.html [^] and answers to it.
Attached Files  SemaTests-ar.cs [^] (1,413 bytes) 10-06-07 01:22
 SemaCritical-ar.cs [^] (4,050 bytes) 10-06-07 01:35

- Relationships

SYSTEM WARNING: Creating default object from empty value

SYSTEM WARNING: Creating default object from empty value

SYSTEM WARNING: Creating default object from empty value

has duplicate 0006587closed  Broken Semaphore>>critical: leads to frozen processes in Delay 
has duplicate 0006582closed  Semaphore fix 
related to 0004882closed  VM lockup 
related to 0006576closed  Delay is not thread-safe 

- Notes
(0011237 - 196 - 208 - 208 - 208 - 208 - 208)
GazzaGuru
10-05-07 22:16

Though the fixes help somewhat there is still a problem with termination of processes leading to over/under signaling of semaphores.

In particular Seaside will terminate a process on timeout...
 
(0011239 - 422 - 460 - 460 - 460 - 460 - 460)
andreas
10-06-07 01:26

I think the attached two change sets should do it. The first one (SemaTests-ar) provides tests for the "one too many" and "one too few" behavior as I understand it so far. The second one (SemaCritical-ar) tries to address the issues by cooperating between Process>>terminate and Semaphore>>critical:. Note that it is critically important (pun intended) to use Semaphore>>critical: from all of the other critical: variants.
 
(0011241 - 141 - 195 - 195 - 195 - 195 - 195)
Keith_Hodges
10-06-07 10:48

"fix begin"
Installer mantis bug: 6588 fix: 'SemaCritical-ar.cs'.
"fix test"
Installer mantis bug: 6588 fix: 'SemaTests-ar.cs'.
"fix end"
 
(0011437 - 67 - 79 - 79 - 79 - 79 - 79)
edgardec
11-15-07 18:04

This is 7153SemaCritical-ar.cs in the 3.10.1 updates.

Thanks all
 
(0012820 - 55 - 55 - 55 - 55 - 55 - 55)
KenCausey
12-01-08 23:03

Harvested as update 7153 and released with Squeak 3.10.
 

- Issue History
Date Modified Username Field Change
08-02-07 11:36 al New Issue
08-02-07 11:36 al File Added: SemaphoreCritical-ar.1.cs
08-02-07 11:56 al Issue Monitored: al
08-03-07 00:29 wiz Relationship added related to 0004882
10-05-07 22:13 matthewf Relationship added related to 0006576
10-05-07 22:16 GazzaGuru Note Added: 0011237
10-06-07 01:22 andreas File Added: SemaTests-ar.cs
10-06-07 01:23 andreas File Added: SemaCritical-ar.cs
10-06-07 01:24 andreas File Deleted: SemaphoreCritical-ar.1.cs
10-06-07 01:26 andreas Note Added: 0011239
10-06-07 01:35 andreas File Deleted: SemaCritical-ar.cs
10-06-07 01:35 andreas File Added: SemaCritical-ar.cs
10-06-07 10:48 Keith_Hodges Note Added: 0011241
10-09-07 01:40 matthewf Relationship added has duplicate 0006587
10-09-07 01:43 matthewf Relationship added has duplicate 0006582
10-09-07 20:37 edgardec Status new => resolved
10-09-07 20:37 edgardec version  => 3.10
11-15-07 18:04 edgardec Note Added: 0011437
12-18-07 15:32 lewis Issue Monitored: lewis
12-01-08 23:03 KenCausey Status resolved => closed
12-01-08 23:03 KenCausey Note Added: 0012820
12-01-08 23:03 KenCausey Resolution open => fixed
12-01-08 23:03 KenCausey Fixed in Version  => 3.10


Mantis 1.0.8[^]
Copyright © 2000 - 2007 Mantis Group
96 total queries executed.
56 unique queries executed.
Powered by Mantis Bugtracker