Comment 42 for bug 61235

Revision history for this message
jonie (jonie) wrote :

I can confirm a couple of things.

1. Problem is related to some external controller / USB chip combinations.
2. AFAIK, this happens due to emulated SCSI bus being stalled by too many sectors being transmitted in a turn.

My setup is an AT2+ (68030) enclosure by Cypress with an old 20 GB harddisk. The box being connected to NForce3 USB chip is very unstable, errors occur only when writing. The same box when connected to add-in USB card with NEC chip (Adaptec clone) is a l m o s t stable. Errors occur only when system is overloaded, probably due to a different bug. More to that, same box performs well under Windows, no matter what USB chip it's connected to.

Changing max_sectors to 128 resolves bug for me.

As it was written above, you may create an udev rule. But as Scott James Remnant put this:

BUS=="scsi", SYSFS{vendor}=="RockChip", RUN+="/bin/sh -c '/bin/echo 128 > /sys/block/%k/device/max_sectors'"

it won't work. You are dealing with SCSI device now, not USB ATA controller device!

So it should look like:

BUS=="scsi", SYSFS{vendor}=="MAXTOR", RUN+="/bin/sh -c '/bin/echo 128 > /sys/block/%k/device/max_sectors'"

for example, if you're using MAXTOR drive.