FAT filesystem becomes corrupted

Bug #12763 reported by Joaquin Cuenca Abela
6
Affects Status Importance Assigned to Milestone
kernel-package (Ubuntu)
Invalid
Medium
Unassigned

Bug Description

I have a FAT-32 filesystem on a iBead mp3 usb player.
The filesystem becomes regularly corrupted.
When I try a dosfsck -a on this unit, it shows/fixes several problems, and then
it segfaults.

Output from dmesg:

usb 1-1: new full speed USB device using address 4
scsi1 : SCSI emulation for USB Mass Storage devices
 Vendor: EXATEL Model: i-BEAD100 Rev: 0001
 Type: Direct-Access ANSI SCSI revision: 02
SCSI device sda: 505857 512-byte hdwr sectors (259 MB)
sda: Write Protect is off
sda: Mode Sense: 03 00 00 04
sda: assuming drive cache: write through
/dev/scsi/host1/bus0/target0/lun0: p1
Attached scsi removable disk sda at scsi1, channel 0, id 0, lun 0
USB Mass Storage device found at 4
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
   File system has been set read-only
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   invalid access to FAT (entry 0x0000ff4b)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   invalid access to FAT (entry 0x0000f732)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   invalid access to FAT (entry 0x0000f9f4)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   invalid access to FAT (entry 0x0000f722)
FAT: Filesystem panic (dev sda1)
   invalid access to FAT (entry 0x0000ffff)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   invalid access to FAT (entry 0x0000ffc2)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   invalid access to FAT (entry 0x0000fc91)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
FAT: Filesystem panic (dev sda1)
   fat_get_cluster: invalid cluster chain (i_pos 0)
usb 1-1: USB disconnect, address 4

Revision history for this message
Chuck Short (zulcss) wrote :

Have you tried writing any data to it recently or even re-formatted it?

Revision history for this message
Matt Zimmerman (mdz) wrote :

dosfsck seems to have some problems; that's why we don't enable it by default.
I wouldn't necessarily trust its analysis, or its ability to fix problems in the
filesystem.

Perhaps you disconnected the device without unmounting it? This must be avoided
until synchronous I/O to vfat filesystems is implemented (bug #8693)

Revision history for this message
Joaquin Cuenca Abela (e98cuenc-yahoo) wrote :

Chuck:

I reformat it regularly. And still this problem keeps coming back.

Matt:

Ok, will not use dosfsck anymore. I religiously unmount the drive each time I
use it. There two more people in my familly that use the unit, and they swear to
also unmount the unit, as I said. But I can't be 100% sure they do it.

I will reformat it again, and make an exclusive use of the unit for some days to
see if this still happens and report my findings.

Thank you,

Revision history for this message
Joaquin Cuenca Abela (e98cuenc-yahoo) wrote :

It seems this is due to users not unmount the drive.
Sorry for the noise.

Revision history for this message
Matt Zimmerman (mdz) wrote :

It is our intention that unmounting should not be strictly necessary, at least
for FAT filesystems. Resolving as a duplicate appropriately.

This bug has been marked as a duplicate of bug 8693.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.