A race condition can cause threads to wait for an ownerless synchronization object (821390)



The information in this article applies to:

  • Microsoft Windows CE .NET 4.2

SYMPTOMS

Under certain conditions, a synchronization object (such as a mutex object) may be abandoned. However, threads that are waiting for the object are not released. This behavior may cause a process to stop responding when the threads of the process wait on a synchronization object.

CAUSE

A race condition may occur between the creation and deletion of a named synchronization object. If a thread creates a named synchronization object at the same time as another thread deletes the same named synchronization object, a new handle is created although the old object still exists. Both threads wait for different synchronization objects instead of waiting for the same named object that they expected to use.

RESOLUTION

Hotfix Information

A supported software update is now available from Microsoft as Windows CE 4.2 Core OS QFE 821390. To resolve this problem immediately, click the following article number for information about obtaining Windows CE Platform Builder and core operating system software updates:

837392 How to locate core operating system fixes for Microsoft Windows CE Platform Builder products

Prerequisites

This fix is supported only when all previously issued fixes for this product have also been installed.

Restart Requirement

After you apply this update, you must perform a clean operation and then rebuild the platform.

Hotfix Replacement Information

This hotfix does not replace any other hotfixes.

File Information

The English version of this package has the file attributes (or later) that are listed in the following table.
   Date         Time   Version            Size    File name
   ----------------------------------------------------------------------------------------

   19-Jul-2003  01:19  4.2.3.718       3,357,288  Wincepb42-030718-kb821390-armv4.exe  
   19-Jul-2003  01:19  4.2.3.718       3,361,384  Wincepb42-030718-kb821390-armv4i.exe
   19-Jul-2003  01:19  4.2.3.718       3,471,976  Wincepb42-030718-kb821390-mipsii.exe
   19-Jul-2003  01:20  4.2.3.718       3,586,664  Wincepb42-030718-kb821390-mipsii_fp.exe
   19-Jul-2003  01:20  4.2.3.718       3,525,224  Wincepb42-030718-kb821390-mipsiv.exe
   19-Jul-2003  01:20  4.2.3.718       3,652,200  Wincepb42-030718-kb821390-mipsiv_fp.exe
   19-Jul-2003  01:19  4.2.3.718       3,152,488  Wincepb42-030718-kb821390-sh3.exe
   19-Jul-2003  01:19  4.2.3.718       3,177,064  Wincepb42-030718-kb821390-sh4.exe
   19-Jul-2003  01:19  4.2.3.718       2,931,304  Wincepb42-030718-kb821390-x86.exe
The English version of this hotfix has the file attributes (or later) that are listed in the following table. The dates and times for these files are listed in coordinated universal time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time tool in Control Panel.
   Date         Time                      Size    File name
   --------------------------------------------------------------

   Path: Public\Common\Oak\Lib\Armv4\Debug
   08-Jul-2003  03:29                    221,024  Coremain.lib
   08-Jul-2003  03:29                     69,632  Coremain.pdb
   08-Jul-2003  03:29                    197,608  Fsmain.lib
   08-Jul-2003  03:29                     69,632  Fsmain.pdb
   08-Jul-2003  03:29                    234,686  Fsysram.lib
   08-Jul-2003  03:29                     69,632  Fsysram.pdb
   30-Jun-2003  20:05                  1,899,548  Nkmain.lib
   30-Jun-2003  20:05                    110,592  Nkmain.pdb
   01-Jul-2003  22:12                    123,182  Nkmapfile.lib
   01-Jul-2003  22:12                     69,632  Nkmapfile.pdb
   30-Jun-2003  20:05                  2,025,302  Nkprmain.lib
   30-Jun-2003  20:05                    110,592  Nkprmain.pdb

   Path: Public\Common\Oak\Lib\Armv4\Retail
   08-Jul-2003  02:20                    198,330  Coremain.lib
   08-Jul-2003  02:20                     69,632  Coremain.pdb
   08-Jul-2003  02:20                    169,334  Fsmain.lib
   08-Jul-2003  02:20                     69,632  Fsmain.pdb
   08-Jul-2003  02:20                    151,010  Fsysram.lib
   08-Jul-2003  02:20                     69,632  Fsysram.pdb
   30-Jun-2003  20:04                  1,199,748  Nkmain.lib
   30-Jun-2003  20:04                    110,592  Nkmain.pdb
   01-Jul-2003  22:12                     57,674  Nkmapfile.lib
   01-Jul-2003  22:12                     69,632  Nkmapfile.pdb
   30-Jun-2003  20:05                  1,302,486  Nkprmain.lib
   30-Jun-2003  20:05                    110,592  Nkprmain.pdb

   Path: Public\Common\Oak\Lib\Armv4i\Debug
   08-Jul-2003  05:45                    221,718  Coremain.lib
   08-Jul-2003  05:45                     69,632  Coremain.pdb
   08-Jul-2003  05:45                    197,888  Fsmain.lib
   08-Jul-2003  05:45                     69,632  Fsmain.pdb
   08-Jul-2003  05:45                    235,042  Fsysram.lib
   08-Jul-2003  05:45                     69,632  Fsysram.pdb
   30-Jun-2003  20:05                  1,903,772  Nkmain.lib
   30-Jun-2003  20:05                    110,592  Nkmain.pdb
   01-Jul-2003  22:12                    123,300  Nkmapfile.lib
   01-Jul-2003  22:12                     69,632  Nkmapfile.pdb
   30-Jun-2003  20:05                  2,029,776  Nkprmain.lib
   30-Jun-2003  20:05                    110,592  Nkprmain.pdb

   Path: Public\Common\Oak\Lib\Armv4i\Retail
   08-Jul-2003  04:36                    199,260  Coremain.lib
   08-Jul-2003  04:36                     69,632  Coremain.pdb
   08-Jul-2003  04:36                    169,546  Fsmain.lib
   08-Jul-2003  04:36                     69,632  Fsmain.pdb
   08-Jul-2003  04:36                    151,100  Fsysram.lib
   08-Jul-2003  04:36                     69,632  Fsysram.pdb
   30-Jun-2003  20:05                  1,202,364  Nkmain.lib
   30-Jun-2003  20:05                    110,592  Nkmain.pdb
   01-Jul-2003  22:12                     57,862  Nkmapfile.lib
   01-Jul-2003  22:12                     69,632  Nkmapfile.pdb
   30-Jun-2003  20:05                  1,305,620  Nkprmain.lib
   30-Jun-2003  20:05                    110,592  Nkprmain.pdb

   Path: Public\Common\Oak\Lib\Mipsii\Debug
   08-Jul-2003  08:01                    227,820  Coremain.lib
   08-Jul-2003  08:01                     69,632  Coremain.pdb
   08-Jul-2003  08:01                    216,136  Fsmain.lib
   08-Jul-2003  08:01                     69,632  Fsmain.pdb
   08-Jul-2003  08:01                    259,820  Fsysram.lib
   08-Jul-2003  08:01                     69,632  Fsysram.pdb
   30-Jun-2003  20:06                  1,939,518  Nkmain.lib
   30-Jun-2003  20:06                    118,784  Nkmain.pdb
   01-Jul-2003  22:12                    126,362  Nkmapfile.lib
   01-Jul-2003  22:12                     69,632  Nkmapfile.pdb
   30-Jun-2003  20:06                  2,077,372  Nkprmain.lib
   30-Jun-2003  20:06                    118,784  Nkprmain.pdb

   Path: Public\Common\Oak\Lib\Mipsii\Retail
   08-Jul-2003  06:52                    203,446  Coremain.lib
   08-Jul-2003  06:52                     69,632  Coremain.pdb
   08-Jul-2003  06:52                    164,304  Fsmain.lib
   08-Jul-2003  06:52                     69,632  Fsmain.pdb
   08-Jul-2003  06:52                    162,496  Fsysram.lib
   08-Jul-2003  06:52                     69,632  Fsysram.pdb
   30-Jun-2003  20:06                  1,234,352  Nkmain.lib
   30-Jun-2003  20:06                    118,784  Nkmain.pdb
   01-Jul-2003  22:12                     61,132  Nkmapfile.lib
   01-Jul-2003  22:12                     69,632  Nkmapfile.pdb
   30-Jun-2003  20:06                  1,349,028  Nkprmain.lib
   30-Jun-2003  20:06                    118,784  Nkprmain.pdb

   Path: Public\Common\Oak\Lib\Mipsii_fp\Debug
   08-Jul-2003  10:19                    227,898  Coremain.lib
   08-Jul-2003  10:19                     77,824  Coremain.pdb
   08-Jul-2003  10:19                    216,146  Fsmain.lib
   08-Jul-2003  10:19                     69,632  Fsmain.pdb
   08-Jul-2003  10:19                    259,838  Fsysram.lib
   08-Jul-2003  10:19                     69,632  Fsysram.pdb
   30-Jun-2003  20:06                  2,007,412  Nkmain.lib
   30-Jun-2003  20:06                    118,784  Nkmain.pdb
   01-Jul-2003  22:13                    126,372  Nkmapfile.lib
   01-Jul-2003  22:13                     69,632  Nkmapfile.pdb
   30-Jun-2003  20:07                  2,145,292  Nkprmain.lib
   30-Jun-2003  20:07                    126,976  Nkprmain.pdb

   Path: Public\Common\Oak\Lib\Mipsii_fp\Retail
   08-Jul-2003  09:09                    203,562  Coremain.lib
   08-Jul-2003  09:09                     77,824  Coremain.pdb
   08-Jul-2003  09:09                    164,314  Fsmain.lib
   08-Jul-2003  09:09                     69,632  Fsmain.pdb
   08-Jul-2003  09:09                    162,506  Fsysram.lib
   08-Jul-2003  09:09                     69,632  Fsysram.pdb
   30-Jun-2003  20:06                  1,294,746  Nkmain.lib
   30-Jun-2003  20:06                    118,784  Nkmain.pdb
   01-Jul-2003  22:12                     61,144  Nkmapfile.lib
   01-Jul-2003  22:12                     69,632  Nkmapfile.pdb
   30-Jun-2003  20:06                  1,409,528  Nkprmain.lib
   30-Jun-2003  20:06                    118,784  Nkprmain.pdb

   Path: Public\Common\Oak\Lib\Mipsiv\Debug
   08-Jul-2003  12:39                    231,586  Coremain.lib
   08-Jul-2003  12:39                     69,632  Coremain.pdb
   08-Jul-2003  12:39                    218,746  Fsmain.lib
   08-Jul-2003  12:39                     69,632  Fsmain.pdb
   08-Jul-2003  12:39                    267,776  Fsysram.lib
   08-Jul-2003  12:39                     69,632  Fsysram.pdb
   30-Jun-2003  20:07                  1,965,950  Nkmain.lib
   30-Jun-2003  20:07                    118,784  Nkmain.pdb
   01-Jul-2003  22:13                    128,430  Nkmapfile.lib
   01-Jul-2003  22:13                     69,632  Nkmapfile.pdb
   30-Jun-2003  20:07                  2,105,250  Nkprmain.lib
   30-Jun-2003  20:07                    118,784  Nkprmain.pdb

   Path: Public\Common\Oak\Lib\Mipsiv\Retail
   08-Jul-2003  11:28                    206,640  Coremain.lib
   08-Jul-2003  11:28                     69,632  Coremain.pdb
   08-Jul-2003  11:28                    165,478  Fsmain.lib
   08-Jul-2003  11:28                     69,632  Fsmain.pdb
   08-Jul-2003  11:28                    166,648  Fsysram.lib
   08-Jul-2003  11:28                     69,632  Fsysram.pdb
   30-Jun-2003  20:07                  1,250,296  Nkmain.lib
   30-Jun-2003  20:07                    118,784  Nkmain.pdb
   01-Jul-2003  22:13                     61,982  Nkmapfile.lib
   01-Jul-2003  22:13                     69,632  Nkmapfile.pdb
   30-Jun-2003  20:07                  1,366,192  Nkprmain.lib
   30-Jun-2003  20:07                    118,784  Nkprmain.pdb

   Path: Public\Common\Oak\Lib\Mipsiv_fp\Debug
   08-Jul-2003  14:59                    231,666  Coremain.lib
   08-Jul-2003  14:59                     77,824  Coremain.pdb
   08-Jul-2003  14:59                    218,756  Fsmain.lib
   08-Jul-2003  14:59                     69,632  Fsmain.pdb
   08-Jul-2003  14:59                    267,794  Fsysram.lib
   08-Jul-2003  14:59                     69,632  Fsysram.pdb
   30-Jun-2003  20:08                  2,038,712  Nkmain.lib
   30-Jun-2003  20:08                    118,784  Nkmain.pdb
   01-Jul-2003  22:13                    128,440  Nkmapfile.lib
   01-Jul-2003  22:13                     69,632  Nkmapfile.pdb
   30-Jun-2003  20:08                  2,178,032  Nkprmain.lib
   30-Jun-2003  20:08                    126,976  Nkprmain.pdb

   Path: Public\Common\Oak\Lib\Mipsiv_fp\Retail
   08-Jul-2003  13:48                    206,758  Coremain.lib
   08-Jul-2003  13:48                     77,824  Coremain.pdb
   08-Jul-2003  13:48                    165,488  Fsmain.lib
   08-Jul-2003  13:48                     69,632  Fsmain.pdb
   08-Jul-2003  13:48                    166,658  Fsysram.lib
   08-Jul-2003  13:48                     69,632  Fsysram.pdb
   30-Jun-2003  20:07                  1,315,714  Nkmain.lib
   30-Jun-2003  20:07                    118,784  Nkmain.pdb
   01-Jul-2003  22:13                     61,994  Nkmapfile.lib
   01-Jul-2003  22:13                     69,632  Nkmapfile.pdb
   30-Jun-2003  20:07                  1,431,718  Nkprmain.lib
   30-Jun-2003  20:07                    118,784  Nkprmain.pdb

   Path: Public\Common\Oak\Lib\Sh3\Debug
   08-Jul-2003  17:20                    196,304  Coremain.lib
   08-Jul-2003  17:20                     69,632  Coremain.pdb
   08-Jul-2003  17:20                    176,246  Fsmain.lib
   08-Jul-2003  17:20                     69,632  Fsmain.pdb
   08-Jul-2003  17:20                    190,798  Fsysram.lib
   08-Jul-2003  17:20                     69,632  Fsysram.pdb
   30-Jun-2003  20:08                  1,573,358  Nkmain.lib
   30-Jun-2003  20:08                    110,592  Nkmain.pdb
   01-Jul-2003  22:13                    102,426  Nkmapfile.lib
   01-Jul-2003  22:13                     69,632  Nkmapfile.pdb
   30-Jun-2003  20:08                  1,684,636  Nkprmain.lib
   30-Jun-2003  20:08                    110,592  Nkprmain.pdb

   Path: Public\Common\Oak\Lib\Sh3\Retail
   08-Jul-2003  16:08                    181,350  Coremain.lib
   08-Jul-2003  16:08                     69,632  Coremain.pdb
   08-Jul-2003  16:08                    136,752  Fsmain.lib
   08-Jul-2003  16:08                     69,632  Fsmain.pdb
   08-Jul-2003  16:08                    134,366  Fsysram.lib
   08-Jul-2003  16:08                     69,632  Fsysram.pdb
   30-Jun-2003  20:08                  1,050,246  Nkmain.lib
   30-Jun-2003  20:08                    110,592  Nkmain.pdb
   01-Jul-2003  22:13                     50,670  Nkmapfile.lib
   01-Jul-2003  22:13                     69,632  Nkmapfile.pdb
   30-Jun-2003  20:08                  1,150,572  Nkprmain.lib
   30-Jun-2003  20:08                    110,592  Nkprmain.pdb

   Path: Public\Common\Oak\Lib\Sh4\Debug
   08-Jul-2003  21:02                    196,030  Coremain.lib
   08-Jul-2003  21:02                     69,632  Coremain.pdb
   08-Jul-2003  21:02                    176,222  Fsmain.lib
   08-Jul-2003  21:02                     69,632  Fsmain.pdb
   08-Jul-2003  21:02                    190,748  Fsysram.lib
   08-Jul-2003  21:02                     69,632  Fsysram.pdb
   30-Jun-2003  20:09                  1,593,810  Nkmain.lib
   30-Jun-2003  20:09                    110,592  Nkmain.pdb
   01-Jul-2003  22:13                    102,378  Nkmapfile.lib
   01-Jul-2003  22:13                     69,632  Nkmapfile.pdb
   30-Jun-2003  20:09                  1,705,166  Nkprmain.lib
   30-Jun-2003  20:09                    110,592  Nkprmain.pdb

   Path: Public\Common\Oak\Lib\Sh4\Retail
   08-Jul-2003  18:44                    180,872  Coremain.lib
   08-Jul-2003  18:44                     69,632  Coremain.pdb
   08-Jul-2003  18:44                    136,726  Fsmain.lib
   08-Jul-2003  18:44                     69,632  Fsmain.pdb
   08-Jul-2003  18:44                    133,988  Fsysram.lib
   08-Jul-2003  18:44                     69,632  Fsysram.pdb
   30-Jun-2003  20:08                  1,068,912  Nkmain.lib
   30-Jun-2003  20:08                    110,592  Nkmain.pdb
   01-Jul-2003  22:13                     50,512  Nkmapfile.lib
   01-Jul-2003  22:13                     69,632  Nkmapfile.pdb
   30-Jun-2003  20:09                  1,169,224  Nkprmain.lib
   30-Jun-2003  20:09                    110,592  Nkprmain.pdb

   Path: Public\Common\Oak\Lib\X86\Debug
   08-Jul-2003  01:16                    169,218  Coremain.lib
   08-Jul-2003  01:16                     69,632  Coremain.pdb
   08-Jul-2003  01:16                    161,608  Fsmain.lib
   08-Jul-2003  01:16                     69,632  Fsmain.pdb
   08-Jul-2003  01:16                    187,970  Fsysram.lib
   08-Jul-2003  01:16                     69,632  Fsysram.pdb
   30-Jun-2003  20:04                  1,573,434  Nkmain.lib
   30-Jun-2003  20:04                    110,592  Nkmain.pdb
   01-Jul-2003  22:12                    103,116  Nkmapfile.lib
   01-Jul-2003  22:12                     69,632  Nkmapfile.pdb
   30-Jun-2003  20:04                  1,685,316  Nkprmain.lib
   30-Jun-2003  20:04                    110,592  Nkprmain.pdb

   Path: Public\Common\Oak\Lib\X86\Retail
   08-Jul-2003  00:09                    156,696  Coremain.lib
   08-Jul-2003  00:09                     69,632  Coremain.pdb
   08-Jul-2003  00:09                    115,050  Fsmain.lib
   08-Jul-2003  00:09                     69,632  Fsmain.pdb
   08-Jul-2003  00:09                    113,930  Fsysram.lib
   08-Jul-2003  00:09                     69,632  Fsysram.pdb
   30-Jun-2003  20:04                  1,002,878  Nkmain.lib
   30-Jun-2003  20:04                    110,592  Nkmain.pdb
   01-Jul-2003  22:12                     46,512  Nkmapfile.lib
   01-Jul-2003  22:12                     69,632  Nkmapfile.pdb
   30-Jun-2003  20:04                  1,096,044  Nkprmain.lib
   30-Jun-2003  20:04                    110,592  Nkprmain.pdb

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section of this article.

Modification Type:MajorLast Reviewed:3/9/2006
Keywords:kbBug kbfix kbQFE KB821390