block: all blk-mq requests are tagged
authorChristoph Hellwig <hch@lst.de>
Mon, 14 Apr 2014 08:30:12 +0000 (10:30 +0200)
committerJens Axboe <axboe@fb.com>
Tue, 15 Apr 2014 20:18:02 +0000 (14:18 -0600)
Instead of setting the REQ_QUEUED flag on each of them just take it into
account in the only macro checking it.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@fb.com>
include/linux/blkdev.h

index eb5e948038920df22fb8fcb1930859e5dbd4fba8..95bb551273ab65f362c03c8dc44ca4f321a5011f 100644 (file)
@@ -1101,7 +1101,8 @@ static inline bool blk_needs_flush_plug(struct task_struct *tsk)
 /*
  * tag stuff
  */
-#define blk_rq_tagged(rq)              ((rq)->cmd_flags & REQ_QUEUED)
+#define blk_rq_tagged(rq) \
+       ((rq)->mq_ctx || ((rq)->cmd_flags & REQ_QUEUED))
 extern int blk_queue_start_tag(struct request_queue *, struct request *);
 extern struct request *blk_queue_find_tag(struct request_queue *, int);
 extern void blk_queue_end_tag(struct request_queue *, struct request *);