Re: [linux-usb-devel] USB devices fail unnecessarily on unpowered hubs

From: Oliver Neukum
Date: Fri Jun 02 2006 - 03:11:28 EST


Am Freitag, 2. Juni 2006 02:03 schrieb David Liontooth:

> The MaxPower value does not appear to be a reliable index of this. My
> USB stick has a MaxPower value of 178mA and works flawlessly off an
> unpowered hub. Unfortunately devices don't seem to tell us what their

It works flawlessly on all hubs you tested, iff other ports are unused.
Unfortunately it needs to work on all hubs, even if all ports are used.

> udev could surely pick up on the MaxPower value and tolerate up to a
> 100% underrun on USB flash drives. That would likely still 90% of the
> pain right there, maybe all of it.

udev can do all it wants if it is running with sufficient priviledge level.
That doesn't change the need for a safe default. The system must run
safely even if udev has gone south or is not installed.

> What are the reasons not to do this? What happens if a USB stick is
> underpowered to one unit? Nothing? Slower transmission? Data loss? Flash
> memory destruction? If it's just speed, it's a price well worth paying.

Data loss. Possibly even on other devices and not reproducible.

> This is a great opportunity for a small exercise in empathy, utilizing
> that little long-neglected mirror neuron. Thousands of USB sticks
> inexplicably go dead in people's familiar hubs on keyboards and desks;
> Linux kernel coders dream sweet dreams of not violating USB power rules.
> I appreciate Andrew's support for a real-worldly solution.

Maybe we should generate a specific "over power budget" event.

Sympathy is well and good, but partial here. Any option will screw one
group. In this case we go with the standard.

Regards
Oliver
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/