aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJens Axboe2009-04-17 01:36:50 -0500
committerJens Axboe2009-04-22 01:35:10 -0500
commitb759113499d6c7cb75fab04f56772579308bc0f8 (patch)
treed36a0ea295f675bd678ee30e8191c0358cfc5b74 /block/blk-timeout.c
parent71982a409f12c50d011325a4471aa20666bb908d (diff)
downloadkernel-common-b759113499d6c7cb75fab04f56772579308bc0f8.tar.gz
kernel-common-b759113499d6c7cb75fab04f56772579308bc0f8.tar.xz
kernel-common-b759113499d6c7cb75fab04f56772579308bc0f8.zip
block: make blk_abort_queue() ignore non-request based devices
There's nothing to do for those devices, since the timeout handling is based on requests. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Diffstat (limited to 'block/blk-timeout.c')
-rw-r--r--block/blk-timeout.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/block/blk-timeout.c b/block/blk-timeout.c
index bbbdc4b8ccf..8f570c4c80e 100644
--- a/block/blk-timeout.c
+++ b/block/blk-timeout.c
@@ -211,6 +211,12 @@ void blk_abort_queue(struct request_queue *q)
211 struct request *rq, *tmp; 211 struct request *rq, *tmp;
212 LIST_HEAD(list); 212 LIST_HEAD(list);
213 213
214 /*
215 * Not a request based block device, nothing to abort
216 */
217 if (!q->request_fn)
218 return;
219
214 spin_lock_irqsave(q->queue_lock, flags); 220 spin_lock_irqsave(q->queue_lock, flags);
215 221
216 elv_abort_queue(q); 222 elv_abort_queue(q);