Messages in this thread | | | Subject | Re: [PATCH] USB:fix USB3 devices behind USB3 hubs not resuming at hibernate thaw | From | Xing Zhengjun <> | Date | Fri, 23 Mar 2018 08:49:44 +0800 |
| |
On 3/22/2018 8:03 PM, Greg KH wrote: > On Wed, Mar 21, 2018 at 01:29:42PM +0800, Zhengjun Xing wrote: >> USB3 hubs don't support global suspend. >> >> USB3 specification 10.10, Enhanced SuperSpeed hubs only support selective >> suspend and resume, they do not support global suspend/resume where the >> hub downstream facing ports states are not affected. >> >> When system enters hibernation it first enters freeze process where only >> the root hub enters suspend, usb_port_suspend() is not called for other >> devices, and suspend status flags are not set for them. Other devices are >> expected to suspend globally. Some external USB3 hubs will suspend the >> downstream facing port at global suspend. These devices won't be resumed >> at thaw as the suspend status flag is not set. >> >> A USB3 removable hard disk connected through a USB3 hub that won't resume >> at thaw will fail to synchronize SCSI cache, return “cmd cmplt err -71” >> error, and needs a 60 seconds timeout which causing system hang for 60s >> before the USB host reset the port for the USB3 removable hard disk to >> recover. >> >> Fix this by always calling usb_port_suspend() during freeze for USB3 >> devices. > This should go to the stable trees as well, right? > > greg k-h Yes. It should go to the stable trees.
| |