Two threads waiting for a critical section

Uwe Bonnes bon at elektron.ikp.physik.tu-darmstadt.de
Mon Sep 3 05:46:55 CDT 2001


Hallo,

appended log seems fishy to me:
trace:win32:_LeaveSysLevel (0x4010f7d4, level 1): thread 0x96d41a0 (fs 02d7, pid 15615) count after  2
(0)
trace:win32:_EnterSysLevel (0x4010f7d4, level 1): thread 0x96d34a0 (fs 01cf, pid 15616) count before 0
(1)                                                                     ^^^^                  ^^^^^^^^
trace:win32:_EnterSysLevel (0x4010f7d4, level 1): thread 0x96d41a0 (fs 02d7, pid 15615) count before 2
trace:win32:_EnterSysLevel (0x4010f7d4, level 1): thread 0x96d41a0 (fs 02d7, pid 15615) count after  3
trace:win32:_LeaveSysLevel (0x4010f7d4, level 1): thread 0x96d41a0 (fs 02d7, pid 15615) count before 3
trace:win32:_LeaveSysLevel (0x4010f7d4, level 1): thread 0x96d41a0 (fs 02d7, pid 15615) count after  2
trace:win32:_EnterSysLevel (0x4010f7d4, level 1): thread 0x96d5280 (fs 07bf, pid 15623) count before 0
(2)                                                                    ^^^^                   ^^^^^^^^
trace:win32:_EnterSysLevel (0x4010f7d4, level 1): thread 0x96d41a0 (fs 02d7, pid 15615) count before 2
trace:win32:_EnterSysLevel (0x4010f7d4, level 1): thread 0x96d41a0 (fs 02d7, pid 15615) count after  3
trace:win32:_LeaveSysLevel (0x4010f7d4, level 1): thread 0x96d41a0 (fs 02d7, pid 15615) count before 3
trace:win32:_LeaveSysLevel (0x4010f7d4, level 1): thread 0x96d41a0 (fs 02d7, pid 15615) count after  2
trace:win32:_EnterSysLevel (0x4010f7d4, level 1): thread 0x96d41a0 (fs 02d7, pid 15615) count before 2
trace:win32:_EnterSysLevel (0x4010f7d4, level 1): thread 0x96d41a0 (fs 02d7, pid 15615) count after  3
trace:win32:_LeaveSysLevel (0x4010f7d4, level 1): thread 0x96d41a0 (fs 02d7, pid 15615) count before 3
trace:win32:_LeaveSysLevel (0x4010f7d4, level 1): thread 0x96d41a0 (fs 02d7, pid 15615) count after  2
trace:win32:_EnterSysLevel (0x4010f7d4, level 1): thread 0x96d41a0 (fs 02d7, pid 15615) count before 2
trace:win32:_EnterSysLevel (0x4010f7d4, level 1): thread 0x96d41a0 (fs 02d7, pid 15615) count after  3
trace:win32:_LeaveSysLevel (0x4010f7d4, level 1): thread 0x96d41a0 (fs 02d7, pid 15615) count before 3
trace:win32:_LeaveSysLevel (0x4010f7d4, level 1): thread 0x96d41a0 (fs 02d7, pid 15615) count after  2
trace:win32:_LeaveSysLevel (0x4010f7d4, level 1): thread 0x96d41a0 (fs 02d7, pid 15615) count before 2
trace:win32:_LeaveSysLevel (0x4010f7d4, level 1): thread 0x96d41a0 (fs 02d7, pid 15615) count after  1
trace:win32:_LeaveSysLevel (0x4010f7d4, level 1): thread 0x96d41a0 (fs 02d7, pid 15615) count before 1
trace:win32:_LeaveSysLevel (0x4010f7d4, level 1): thread 0x96d41a0 (fs 02d7, pid 15615) count after  0
(3)                                                                         
err:ntdll:RtlpWaitForCriticalSection section 0x4010f7d4 "syslevel.c: Win16Mutex" wait timed out, retrying (60 sec) fs=07bf
err:ntdll:RtlpWaitForCriticalSection section 0x4010f7d4 "syslevel.c: Win16Mutex" wait timed out, retrying (5 min) fs=07bf

At (0) 0x96d41a0 holds the Mutex. At (1) 0x96d34a0 tries to get it, but as
0x96d41a0 has the Mutex, it waits. At (2) 0x96d5280 also tries to get the
lock and must also wait. At (3) 0x96d41a0 releases the lock, but neither
0x96d34a0 nor 0x96d5280 start to aquire the lock. Why doesn't one of them
continue?

This happens with the installer from the recent RS Components CD-ROM running
SETUP.EXE with --winver nt40.

Bye
-- 
Uwe Bonnes                bon at elektron.ikp.physik.tu-darmstadt.de

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
--------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------




More information about the wine-devel mailing list