[issue563] strange bug with USB hdd

Matthew Dillon dillon at apollo.backplane.com
Tue Jul 24 13:14:39 PDT 2007


    I am going to assume these are bus-powered USB hard drives.  I got
    two and found that my test box does not produce enough power to be
    able to operate both at the same time.

    I happen to have four USB ports on two controllers on this test box.
    When I put both HDs on the same controller and load both down at once
    one invariably shuts down.  These USB HDs are laptop HDs that probably
    have voltage droop protection, hence they shut down if the usb
    bus overcurrents instead of trying to run with a haywire voltage.

    When I put the two HDs on different USB controllers they can operate
    simultaniously.

    The I/O errors and block errors are almost certainly due to voltage
    droop.  Your laptop probably can't produce sufficient current to
    operate both USB HDs at the same time and I'm guessing your HDs don't
    have voltage droop protection, so they try to keep running even when
    the bus is overcurrented.

    USB controllers do have current limiting and the protocol has a way
    to specify current draw, but nobody's drivers (us, NetBSD, FreeBSD, or
    I think linux) actually checks whether all the devices on a USB bus
    add up to more current then the USB bus can handle.

						-Matt






More information about the Bugs mailing list