diff options
author | Bart Van Assche <bart.vanassche@sandisk.com> | 2017-06-20 20:15:46 +0200 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2017-06-21 03:27:14 +0200 |
commit | 332ebbf7f9efb31ffc363b99da548963ee3fd66d (patch) | |
tree | 6e14e628aefabbe5331544977f9300c9800c8aa3 /block/blk.h | |
parent | block: Check locking assumptions at runtime (diff) | |
download | linux-332ebbf7f9efb31ffc363b99da548963ee3fd66d.tar.xz linux-332ebbf7f9efb31ffc363b99da548963ee3fd66d.zip |
block: Document what queue type each function is intended for
Some functions in block/blk-core.c must only be used on blk-sq queues
while others are safe to use against any queue type. Document which
functions are intended for blk-sq queues and issue a warning if the
blk-sq API is misused. This does not only help block driver authors
but will also make it easier to remove the blk-sq code once that code
is declared obsolete.
Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Cc: Hannes Reinecke <hare@suse.com>
Cc: Omar Sandoval <osandov@fb.com>
Cc: Ming Lei <ming.lei@redhat.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block/blk.h')
-rw-r--r-- | block/blk.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/block/blk.h b/block/blk.h index 83c8e1100525..798691a5e5e9 100644 --- a/block/blk.h +++ b/block/blk.h @@ -143,6 +143,8 @@ static inline struct request *__elv_next_request(struct request_queue *q) struct request *rq; struct blk_flush_queue *fq = blk_get_flush_queue(q, NULL); + WARN_ON_ONCE(q->mq_ops); + while (1) { if (!list_empty(&q->queue_head)) { rq = list_entry_rq(q->queue_head.next); |