[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <1ec607c8-9f55-ab57-9ae7-0d3420ae56d4@linux.intel.com>
Date: Fri, 23 Mar 2018 08:49:44 +0800
From: Xing Zhengjun <zhengjun.xing@...ux.intel.com>
To: Greg KH <gregkh@...uxfoundation.org>
Cc: stern@...land.harvard.edu, mathias.nyman@...ux.intel.com,
linux-usb@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] USB:fix USB3 devices behind USB3 hubs not resuming at
hibernate thaw
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.
Powered by blists - more mailing lists