[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