[USB/MSDOSFS] Possible File System Corrupted

Rainer Alves rainer.alves at gmail.com
Tue Nov 13 19:30:34 PST 2007


On 11/13/2007 15:36, Oliver Fromme wrote:
> Tim Clewlow wrote:
>  > Michal Varga wrote:
>  > > Rainer Alves wrote:
>  > > > I'm having the exact same problem.
>  > > > Ever since I've switched from RELENG_6 to RELENG_7 I'm still able to 
>  > > > mount my SonyEricsson W810 phone, but whatever is copied there gets 
>  > > > corrupted.
>  > > > I first noticed this yesterday when copying a new batch os MP3s to its 4 
>  > > > GB memory stick.
>  > > 
>  > > "Me too" - I see this with USB2.0 support/controller enabled, tested on
>  > > two nforce5 and amd690 boards. Random (but pretty heavy) corruptions
>  > > with data transferred to and from digital camera and mp3 player (both
>  > > acting as common "usb flash disks"). Disabling USB2.0 seems to fix it
>  > > AND also no board without USB2.0 controller exhibits this here (I just
>  > > did a few quick tests, and nothing so far). Possibly some EHCI-specific
>  > > bug?
>
> I remember there was an msdosfs corruption problem reported
> a few months ago.  It could be worked around by disabling
> read/write clustering when mounting the file systems (see
> the options in the mount(8) manpage).
>
> I don't think this issue is related, but it might still be
> worth a try.
>   

Unfortunately the problem isn't solved when I disable clustering (-o 
noclusterr,noclusterw), files are still getting corrupted.
Btw, it isn't possible to disable clustering in RELENG_7 unless this 
patch is applied:
http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/fs/msdosfs/msdosfs_vfsops.c.diff?r1=1.176;r2=1.177

Let me know if I can do further testing, so far all I can say is that 
md5 checksums don't match before/after the copy process.

umass0: <Sony Ericsson Sony Ericsson W810, class 0/0, rev 2.00/0.00, 
addr 3> on uhub0
umass1: <Sony Ericsson Sony Ericsson W810, class 0/0, rev 2.00/0.00, 
addr 3> on uhub0
da0 at umass-sim0 bus 0 target 0 lun 0
da0: <SEMC Int.Memory 0000> Removable Direct Access SCSI-0 device
da0: 1.000MB/s transfers
da0: 26MB (54008 512 byte sectors: 64H 32S/T 26C)
da1 at umass-sim1 bus 1 target 0 lun 0
da1: <SEMC Mem-Stick 0000> Removable Direct Access SCSI-0 device
da1: 1.000MB/s transfers
da1: 3905MB (7999298 512 byte sectors: 255H 63S/T 497C)
GEOM_LABEL: Label for provider da0s1 is msdosfs/PHONE.
GEOM_LABEL: Label for provider da1s1 is msdosfs/PHONE CARD.

[rainer at bsd ~]$ sudo usbdevs -v | grep Sony
 port 6 addr 3: full speed, power 500 mA, config 1, Sony Ericsson 
W810(0xe042), Sony Ericsson(0x0fce), rev 0.00

[rainer at bsd ~]$ sudo camcontrol devlist | grep SE
<SEMC Int.Memory 0000>             at scbus4 target 0 lun 0 (da0,pass1)
<SEMC Mem-Stick 0000>              at scbus5 target 0 lun 0 (da1,pass2)











More information about the freebsd-current mailing list