diff options
Diffstat (limited to 'include/linux/blk-mq.h')
-rw-r--r-- | include/linux/blk-mq.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/include/linux/blk-mq.h b/include/linux/blk-mq.h index 7aec86127335..8210e8797c12 100644 --- a/include/linux/blk-mq.h +++ b/include/linux/blk-mq.h | |||
@@ -164,6 +164,8 @@ enum { | |||
164 | << BLK_MQ_F_ALLOC_POLICY_START_BIT) | 164 | << BLK_MQ_F_ALLOC_POLICY_START_BIT) |
165 | 165 | ||
166 | struct request_queue *blk_mq_init_queue(struct blk_mq_tag_set *); | 166 | struct request_queue *blk_mq_init_queue(struct blk_mq_tag_set *); |
167 | struct request_queue *blk_mq_init_allocated_queue(struct blk_mq_tag_set *set, | ||
168 | struct request_queue *q); | ||
167 | void blk_mq_finish_init(struct request_queue *q); | 169 | void blk_mq_finish_init(struct request_queue *q); |
168 | int blk_mq_register_disk(struct gendisk *); | 170 | int blk_mq_register_disk(struct gendisk *); |
169 | void blk_mq_unregister_disk(struct gendisk *); | 171 | void blk_mq_unregister_disk(struct gendisk *); |
@@ -218,6 +220,7 @@ void blk_mq_start_hw_queue(struct blk_mq_hw_ctx *hctx); | |||
218 | void blk_mq_stop_hw_queues(struct request_queue *q); | 220 | void blk_mq_stop_hw_queues(struct request_queue *q); |
219 | void blk_mq_start_hw_queues(struct request_queue *q); | 221 | void blk_mq_start_hw_queues(struct request_queue *q); |
220 | void blk_mq_start_stopped_hw_queues(struct request_queue *q, bool async); | 222 | void blk_mq_start_stopped_hw_queues(struct request_queue *q, bool async); |
223 | void blk_mq_run_hw_queues(struct request_queue *q, bool async); | ||
221 | void blk_mq_delay_queue(struct blk_mq_hw_ctx *hctx, unsigned long msecs); | 224 | void blk_mq_delay_queue(struct blk_mq_hw_ctx *hctx, unsigned long msecs); |
222 | void blk_mq_tag_busy_iter(struct blk_mq_hw_ctx *hctx, busy_iter_fn *fn, | 225 | void blk_mq_tag_busy_iter(struct blk_mq_hw_ctx *hctx, busy_iter_fn *fn, |
223 | void *priv); | 226 | void *priv); |
@@ -227,7 +230,7 @@ void blk_mq_freeze_queue_start(struct request_queue *q); | |||
227 | 230 | ||
228 | /* | 231 | /* |
229 | * Driver command data is immediately after the request. So subtract request | 232 | * Driver command data is immediately after the request. So subtract request |
230 | * size to get back to the original request. | 233 | * size to get back to the original request, add request size to get the PDU. |
231 | */ | 234 | */ |
232 | static inline struct request *blk_mq_rq_from_pdu(void *pdu) | 235 | static inline struct request *blk_mq_rq_from_pdu(void *pdu) |
233 | { | 236 | { |
@@ -235,7 +238,7 @@ static inline struct request *blk_mq_rq_from_pdu(void *pdu) | |||
235 | } | 238 | } |
236 | static inline void *blk_mq_rq_to_pdu(struct request *rq) | 239 | static inline void *blk_mq_rq_to_pdu(struct request *rq) |
237 | { | 240 | { |
238 | return (void *) rq + sizeof(*rq); | 241 | return rq + 1; |
239 | } | 242 | } |
240 | 243 | ||
241 | #define queue_for_each_hw_ctx(q, hctx, i) \ | 244 | #define queue_for_each_hw_ctx(q, hctx, i) \ |