On Mon, 2018-08-06 at 10:46 +-0800, jianchao.wang wrote: +AD4- On 08/04/2018 08:03 AM, Bart Van Assche wrote: +AD4- +AD4- Instead of allowing requests that are not power management requests +AD4- +AD4- to enter the queue in runtime suspended status (RPM+AF8-SUSPENDED), make +AD4- +AD4- the blk+AF8-get+AF8-request() caller block. +AD4- +AD4- Who will resume the runtime suspended device ? +AD4- +AD4- In original blk-legacy, when a request is added, blk+AF8-pm+AF8-add+AF8-request will call +AD4- pm+AF8-request+AF8-resume could do that. The request will be issued after the q is resumed +AD4- successfully. +AD4- +AD4- After this patch, non-pm request will be blocked and pm+AF8-request+AF8-resume is removed from +AD4- blk+AF8-pm+AF8-add+AF8-request, who does resume the runtime suspended q and device ? Hello Jianchao, I will double check that all contexts from which requests are submitted protect submission of non-RQF+AF8-PM requests with scsi+AF8-autopm+AF8-get+AF8-device() / scsi+AF8-autopm+AF8-put+AF8-device(). scsi+AF8-autopm+AF8-get+AF8-device() namely resumes suspended devices. Bart.