X-Git-Url: https://git.stricted.de/?a=blobdiff_plain;f=block%2Fblk-core.c;h=25cc9f9fa16464a7f94ae24453d040fca73f0fdd;hb=d97274d81f494b7f68593e7a12d869850aec6a31;hp=879b42ae344dcb0c36b2c144358ba00d0d6f1ddf;hpb=d50b84c4731378320987ff1daaa6bd9ca3e562d8;p=GitHub%2Fmt8127%2Fandroid_kernel_alcatel_ttab.git diff --git a/block/blk-core.c b/block/blk-core.c index 879b42ae344d..25cc9f9fa164 100644 --- a/block/blk-core.c +++ b/block/blk-core.c @@ -3140,6 +3140,9 @@ int blk_pre_runtime_suspend(struct request_queue *q) { int ret = 0; + if (!q->dev) + return ret; + spin_lock_irq(q->queue_lock); if (q->nr_pending) { ret = -EBUSY; @@ -3167,6 +3170,9 @@ EXPORT_SYMBOL(blk_pre_runtime_suspend); */ void blk_post_runtime_suspend(struct request_queue *q, int err) { + if (!q->dev) + return; + spin_lock_irq(q->queue_lock); if (!err) { q->rpm_status = RPM_SUSPENDED; @@ -3191,6 +3197,9 @@ EXPORT_SYMBOL(blk_post_runtime_suspend); */ void blk_pre_runtime_resume(struct request_queue *q) { + if (!q->dev) + return; + spin_lock_irq(q->queue_lock); q->rpm_status = RPM_RESUMING; spin_unlock_irq(q->queue_lock); @@ -3213,6 +3222,9 @@ EXPORT_SYMBOL(blk_pre_runtime_resume); */ void blk_post_runtime_resume(struct request_queue *q, int err) { + if (!q->dev) + return; + spin_lock_irq(q->queue_lock); if (!err) { q->rpm_status = RPM_ACTIVE;