Mark Lord napsal(a): > Mmm.. okay, a quick glance at the USB storage code revealed one instance: > > /* Did we transfer less than the minimum amount required? */ > if (srb->result == SAM_STAT_GOOD && > srb->request_bufflen - srb->resid < srb->underflow) > srb->result = (DID_ERROR << 16) | (SUGGEST_RETRY << 24); > > return; > > So I suppose this *could* be the driver thinking it had a bad sector, > but it really looks like it's guessing. The code also appears to be > instrumented for some kind of USB tracing.. If you can figure out how > to turn that on, then the trace will probably tell us what is really > going on there. > Look for a file called "usbmon.txt" in the Documentation/usb/ subdir > of your kernel source tree. It describes how to do the tracing. Did you want me to do something like this: http://www.fi.muni.cz/~xslaby/sklad/usbmon/?M=A usb2 means usb bus 2. without "a"s commands was: [connect the device] mount /dev/sdb usb/ [filesystem is vfat] dd if=/dev/zero of=usb/zero1 bs=1k count=3 [wait some time to let system syncing automagically] umount usb/ [disconnect the device] with "a" there is only difference in dd command: ... dd if=/dev/zero of=usb/zero2 bs=1k count=5 ... The first serie is without the error in the latter one appeared (some time after `dd', when system syncs): sd 6:0:0:0: SCSI error: return code = 0x10070000 end_request: I/O error, dev sdb, sector 8223 [same as before] I have i386 arch, so 4096 is PAGE_SIZE, when it syncs only one dirty page, it seems to be OK, otherwise it's not, if this helps in any way. thanks, -- Jiri Slaby www.fi.muni.cz/~xslaby \_.-^-._ jirislaby@xxxxxxxxx _.-^-._/ B67499670407CE62ACC8 22A032CC55C339D47A7E - : send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html