Intermittent pauses copying from one usb drive to another
donaldcallen at gmail.com
Sat Feb 5 15:49:53 UTC 2011
On Sat, Feb 5, 2011 at 9:34 AM, Hans Petter Selasky <hselasky at c2i.net>wrote:
> On Saturday 05 February 2011 14:27:56 Donald Allen wrote:
> > I've discussed problems with FreeBSD and usb sata drives on this list
> > in the past (as recently as last September), and have given up on
> > FreeBSD as a result of the usb disk problems (I do my backups with usb
> > drives) and other usb-related issues. But I've now replaced the usb
> > enclosures I was using at that time and have acquired some Toshiba usb
> > drives, so with this new equipment, I thought I'd give FreeBSD another
> > try, since generally I prefer it to Linux. But I'm having problems
> > again.
> > Plugging in the Toshiba drives produces entries like this in
> > /var/log/message:
> Errors happen because the USB firmware of your USB hardware does not
> all the SCSI commands issued by the CAM/SCSI layer. This is a well known
> problem. Probably Linux is better at filtering the SCSI commands passed to
> various devices.
> Proof: I have a custom USB test software suite actually running under
> which can stress test mass storage devices. So far very few USB mass
> devices I've seen pass all the tests and recover properly. Most
> sticks simply die at the first non-supported SCSI command and/or error
> scenario even though the SCSI and USB mass storage wrapper for SCSI
> define error codes to be returned in case of failure. Contact me off-list
> you are interested in this.
> Solution: USB mass storage devices needs to be crippled down to a few SCSI
> commands like READ_12 and WRITE_12. This is not a USB problem. It needs to
> done in the CAM/SCSI layer.
I understand what you are saying. Does whoever is responsible for CAM/SCSI
know about this and do you know if there are plans to fix it? What is the
point of "supporting" USB devices (and we aren't talking about an odd-ball
device here; these are USB disks), when the "support" is partially broken?
You don't see problems like this with Windows or Linux, and this whole area
of USB devices has been a problem since the 7.x series and, I suspect,
before, regardless of whether it's the fault of the USB layer or some other
part of the system. The user doesn't care which layer is at fault; they care
about whether their devices are supported or not by the system.
> What you can do: Ask the vendor to test their USB devices with FreeBSD 8.2
> before shipping.
That's going to be like talking to a wall. I have a Toshiba netbook that
does not run Linux properly, at least not Linux out of the box. Why? The
BIOS is broken and doesn't support MSI correctly (interrupts are lost).
Windows (at least the one delivered with the machine -- XP) doesn't use MSI,
but Linux does by default. So you try installing Linux on this thing and the
installation periodically grinds to a halt until you generate some
interrupts by touching the touchpad or pressing a key on the keyboard, etc.
You have to turn off MSI in the Linux kernel at boot time to get things to
work. I explained all this to Toshiba Customer Service (an oxymoron) last
year and they couldn't have cared less and it is still not fixed. They don't
give a damn about Linux, so I'm sure they'll get right on it when I ask them
to test their USB drives with FreeBSD :-)
More information about the freebsd-current