USB: Enable LPM after a failed probe.
authorSarah Sharp <sarah.a.sharp@linux.intel.com>
Thu, 4 Oct 2012 16:53:43 +0000 (09:53 -0700)
committerSarah Sharp <sarah.a.sharp@linux.intel.com>
Mon, 8 Oct 2012 18:47:40 +0000 (11:47 -0700)
commitd01f87c0ffa96cb44faa78710711eb6e974b891c
tree9016b46d3d84a9deaf402de534c48820787fd266
parentecefbd94b834fa32559d854646d777c56749ef1c
USB: Enable LPM after a failed probe.

Before a driver is probed, we want to disable USB 3.0 Link Power
Management (LPM), in case the driver needs hub-initiated LPM disabled.
After the probe finishes, we want to attempt to re-enable LPM, order to
balance the LPM ref count.

When a probe fails (such as when libusual doesn't want to bind to a USB
3.0 mass storage device), make sure to balance the LPM ref counts by
re-enabling LPM.

This patch should be backported to kernels as old as 3.5, that contain
the commit 8306095fd2c1100e8244c09bf560f97aca5a311d "USB: Disable USB
3.0 LPM in critical sections."

Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Cc: stable@vger.kernel.org
drivers/usb/core/driver.c