forked from rubenslte/android_kernel_samsung_msm8226
blkpm: avoid sleep when holding queue lock
In blk_post_runtime_resume, an autosuspend request will be initiated for the device. Since we are holding the queue lock, we can't sleep and thus we should use the async version to initiate an autosuspend, i.e. pm_request_suspend instead of pm_runtime_suspend, which might sleep. Change-Id: I28cbe7e20ffdcb8f7b3329bf3b827c942dd1b45a Signed-off-by: Aaron Lu <aaron.lu@intel.com> Signed-off-by: Jens Axboe <axboe@kernel.dk> Git-commit: c60855cdb976c632b3bf8922eeab8a0e78edfc04 Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git Signed-off-by: Sujit Reddy Thumma <sthumma@codeaurora.org>
This commit is contained in:
committed by
Sujit Reddy Thumma
parent
83322fe198
commit
0ed7591206
+1
-1
@@ -3153,7 +3153,7 @@ void blk_post_runtime_resume(struct request_queue *q, int err)
|
||||
q->rpm_status = RPM_ACTIVE;
|
||||
__blk_run_queue(q);
|
||||
pm_runtime_mark_last_busy(q->dev);
|
||||
pm_runtime_autosuspend(q->dev);
|
||||
pm_request_autosuspend(q->dev);
|
||||
} else {
|
||||
q->rpm_status = RPM_SUSPENDED;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user