FIX: A "Data Abort" exception may occur during system startup when the file system advertises a new interface for a mounted volume on a Windows Embedded CE 6.0 R3-based device


Symptoms


You start a Windows Embedded CE 6.0 R3-based device. Then, when the file system advertises a new interface for a mounted volume, you may encounter the following exception:
Data Abort

Cause


This problem occurs because of a code defect in the AddAdvertisedInterface function of the Fsadvertise.lib file. The AdvertisementListElement structure does include a DEVDETAIL structure. And, two bytes were added to the value of the cbName DEVDETAIL structure member.

However, the memory allocation does not account for these two bytes. When the memory that is allocated for the DEVDETAIL structure is at the end of a memory page, an access violation occurs that results in the exception described in the "Symptoms" section.

Note If you debug this issue in the kernel debugger, and you enable the Verbose debug zone (ZONE_VERBOSE) for the Filesys.dll file, in the debug output when the exception occurs, you notice several of the following entries:
AddAdvertisedInterface: 

Resolution


Software update information

A supported software update is now available from Microsoft as Windows Embedded CE 6.0 Monthly Update August 2011. In the "File information" section, the package file name contains the product version, the date, the Knowledge Base article number, and the processor type. The package file name format is as follows:
Product version-yymmdd-kbnnnnnn-processor type
For example, Wincepb60-110128-kb2492159-armv4i.msi is the ARMV4i Windows Embedded CE 6.0 Platform Builder fix that is documented in KB article 2492159 and that is contained in the January 2011 monthly update.

To resolve this problem immediately, download this Windows Embedded CE 6.0 Monthly Update from the following Microsoft website.

Microsoft Download Center

Prerequisites

This update is supported only if all previously issued updates for this product were also installed.

Restart requirement

After you apply this 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 other 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 nameFile sizeDateTime
Wincepb60-110816-kb2587327-mipsii.msi458,75216-Aug-201118:13
Wincepb60-110816-kb2587327-mipsii_fp.msi462,84816-Aug-201118:13
Wincepb60-110816-kb2587327-mipsiv.msi458,75216-Aug-201118:13
Wincepb60-110816-kb2587327-mipsiv_fp.msi462,84816-Aug-201118:13
Wincepb60-110816-kb2587327-sh4.msi454,65616-Aug-201118:13
Wincepb60-110816-kb2587327-x86.msi454,65616-Aug-201118:13
Wincepb60-110816-kb2587327-armv4i.msi458,75216-Aug-201118:13
Files that are included in this update package
File nameFile sizeDateTimePath
Windows embedded ce 6.0_update_kb2587327.htm7,69216-Aug-201117:45110816_kb2587327
Fsadvertise.lib49,13603-Aug-201119:05Public\Common\Oak\Lib\Armv4i\Debug
Fsadvertise.lib30,99003-Aug-201119:05Public\Common\Oak\Lib\Armv4i\Retail
Fsadvertise.lib47,86803-Aug-201119:05Public\Common\Oak\Lib\Mipsii\Debug
Fsadvertise.lib31,49603-Aug-201119:05Public\Common\Oak\Lib\Mipsii\Retail
Fsadvertise.lib47,87803-Aug-201119:05Public\Common\Oak\Lib\Mipsii_fp\Debug
Fsadvertise.lib31,50803-Aug-201119:05Public\Common\Oak\Lib\Mipsii_fp\Retail
Fsadvertise.lib48,46803-Aug-201119:05Public\Common\Oak\Lib\Mipsiv\Debug
Fsadvertise.lib32,10603-Aug-201119:05Public\Common\Oak\Lib\Mipsiv\Retail
Fsadvertise.lib48,47803-Aug-201119:05Public\Common\Oak\Lib\Mipsiv_fp\Debug
Fsadvertise.lib32,11803-Aug-201119:05Public\Common\Oak\Lib\Mipsiv_fp\Retail
Fsadvertise.lib42,91803-Aug-201119:06Public\Common\Oak\Lib\Sh4\Debug
Fsadvertise.lib28,70003-Aug-201119:06Public\Common\Oak\Lib\Sh4\Retail
Fsadvertise.lib42,46403-Aug-201119:05Public\Common\Oak\Lib\X86\Debug
Fsadvertise.lib27,20203-Aug-201119:05Public\Common\Oak\Lib\X86\Retail

References


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