FIX: A deadlock occurs between two threads in Windows Embedded CE 6.0 R3

Symptoms

Consider the following scenario:

  • You run a Windows Embedded CE 6.0 R3-based image that contains the Storage Manager components on a target device.

  • A thread calls the DismountStore function or the DismountPartition function. For example, this happens when you unmount an external storage device from the Windows Embedded CE 6.0 R3-based device.

  • Another thread calls the CeResyncFilesys function or the PNPThread¬†function. For example, this happens when you remount the external storage device to the Windows Embedded CE 6.0 R3-based device.

In this scenario, a deadlock may occur between the two threads. Additionally, the applications that produce these threads may stop responding.

Resolution

Software update information

A supported software update is now available from Microsoft as Windows Embedded CE 6.0 Platform Builder Monthly Update (February 2011). You can confirm this by scrolling to the "File information" section of this article. The package file name contains the product version, date, Knowledge Base article number, and processor type. The package file name format is:

Product version-yymmdd-kbnnnnnn-processor typeFor example: Wincepb50-060503-kb917590-armv4i.msi is the ARMV4i Windows Embedded CE 5.0 Platform Builder fix that is documented in KB article 917590 and that is contained in the May 2006 monthly update. To resolve this problem immediately, click the following article number for information about obtaining Windows Embedded CE Platform Builder and core operating system software updates:

837392 How to locate core operating system fixes for Microsoft Windows Embedded CE Platform Builder productsNote This Windows Embedded CE 6.0 Monthly Update is also available for download from the following Microsoft Download Center website:

Windows Embedded CE 6.0 Updates

Prerequisites

To apply this software update, you must have all previously issued software updates for this product installed.

Restart requirement

After you install this software update, you must perform a clean build of the whole platform. To do this, use one of the following methods:

  • On the Build menu, click Clean Solution, and then click Build Solution.

  • On the Build menu, click Rebuild Solution.

You do not have to restart the computer after you apply this software update.

Update replacement information

This update does not replace any updates.

File information

The English version of this software update package has the file attributes (or later file attributes) 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 item in Control Panel.

Installer files

File name

File size

Date

Time

Wincepb60-110211-kb2495580-armv4i.msi

1,557,504

11-Feb-2011

19:29

Wincepb60-110211-kb2495580-mipsii.msi

1,545,728

11-Feb-2011

19:29

Wincepb60-110211-kb2495580-mipsii_fp.msi

1,545,728

11-Feb-2011

19:29

Wincepb60-110211-kb2495580-mipsiv.msi

1,554,432

11-Feb-2011

19:29

Wincepb60-110211-kb2495580-mipsiv_fp.msi

1,554,944

11-Feb-2011

19:29

Wincepb60-110211-kb2495580-sh4.msi

1,509,888

11-Feb-2011

19:29

Wincepb60-110211-kb2495580-x86.msi

1,414,656

11-Feb-2011

19:29

Files that are included in this hotfix package

File name

File size

Date

Time

Path

Windows embedded ce 6.0_update_kb2495580.htm

7,826

11-Feb-2011

19:24

110211_kb2495580

Stgapi.cpp

31,672

31-Jan-2011

15:53

Private\Winceos\Coreos\Storage\Fsdmgr

Fsdmgr_lib.lib

1,524,562

31-Jan-2011

15:52

Public\Common\Oak\Lib\Armv4i\Debug

Fsdmgr_lib.lib

1,238,704

31-Jan-2011

15:52

Public\Common\Oak\Lib\Armv4i\Retail

Fsdmgr_lib.lib

1,499,316

31-Jan-2011

15:52

Public\Common\Oak\Lib\Mipsii\Debug

Fsdmgr_lib.lib

1,246,874

31-Jan-2011

15:52

Public\Common\Oak\Lib\Mipsii\Retail

Fsdmgr_lib.lib

1,499,620

31-Jan-2011

15:52

Public\Common\Oak\Lib\Mipsii_fp\Debug

Fsdmgr_lib.lib

1,247,304

31-Jan-2011

15:52

Public\Common\Oak\Lib\Mipsii_fp\Retail

Fsdmgr_lib.lib

1,522,548

31-Jan-2011

15:53

Public\Common\Oak\Lib\Mipsiv\Debug

Fsdmgr_lib.lib

1,264,262

31-Jan-2011

15:52

Public\Common\Oak\Lib\Mipsiv\Retail

Fsdmgr_lib.lib

1,522,852

31-Jan-2011

15:53

Public\Common\Oak\Lib\Mipsiv_fp\Debug

Fsdmgr_lib.lib

1,264,680

31-Jan-2011

15:53

Public\Common\Oak\Lib\Mipsiv_fp\Retail

Fsdmgr_lib.lib

1,345,590

31-Jan-2011

15:53

Public\Common\Oak\Lib\Sh4\Debug

Fsdmgr_lib.lib

1,137,626

31-Jan-2011

15:53

Public\Common\Oak\Lib\Sh4\Retail

Fsdmgr_lib.lib

1,269,976

31-Jan-2011

15:51

Public\Common\Oak\Lib\X86\Debug

Fsdmgr_lib.lib

1,068,924

31-Jan-2011

15:51

Public\Common\Oak\Lib\X86\Retail

Status

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

More Information

For more information about software update terminology, click the following article number to view the article in the Microsoft Knowledge Base:

824684 Description of the standard terminology that is used to describe Microsoft software updates

Need more help?

Expand your skills
Explore Training
Get new features first
Join Microsoft Insiders

Was this information helpful?

Thank you for your feedback!

Thank you for your feedback! It sounds like it might be helpful to connect you to one of our Office support agents.

×