Microsoft KB Archive/260318

From BetaArchive Wiki
Knowledge Base


Article ID: 260318

Article Last Modified on 12/19/2003



APPLIES TO

  • Microsoft Windows CE 2.12 for the Handheld PC
  • Microsoft Windows CE 2.11 for the Handheld PC
  • Microsoft Windows CE 2.0 for the Handheld PC



This article was previously published under Q260318

SYMPTOMS

During system operation, debug messages similar to the following may appear in the debug output when a file allocation table (FAT) mass storage device is attached:

0x81f954cc: FATFS!FindNext: LFN chksum (0x54 vs. 0xda) error
0x81f954cc: FATFS!FindNext: LFN chksum (0x95 vs. 0x1b) error
0x81f954cc: FATFS!FindNext: LFN chksum (0xaa vs. 0x66) error
                

CAUSE

These warning messages indicate that long file name (LFN) directory entries exist, which have been unlinked from the short file name entry. The unlinked LFN directory entries are usually caused by removal or renaming of files on the disk by a user, when using a non-LFN-aware operating system.

RESOLUTION

This is a benign form of FAT directory corruption and can be corrected with a disk repair tool such as Windows ScanDisk. If the media can be moved to a Microsoft Windows desktop computer, the problem can be corrected. Data that is stored on the disk is not at risk because of this condition.

STATUS

This behavior is by design.

MORE INFORMATION

The LFN on-disk format uses several slots in the directory table to store segments of the long file name. When reading the directory, FATFS must re-assemble the long file name segments and connect them to the primary directory entry, which uses the old-style 8.3 directory entry format. Each segment contains the checksum of the primary 8.3 name. When the long file name segments do not have a matching checksum, they are considered orphaned LFN segments and are discarded.

Keywords: kbprb KB260318