diff options
Diffstat (limited to 'include/linux/blk-mq.h')
-rw-r--r-- | include/linux/blk-mq.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/include/linux/blk-mq.h b/include/linux/blk-mq.h index 2686f9e7302a..63569eb46d15 100644 --- a/include/linux/blk-mq.h +++ b/include/linux/blk-mq.h | |||
@@ -22,6 +22,7 @@ struct blk_mq_hw_ctx { | |||
22 | 22 | ||
23 | unsigned long flags; /* BLK_MQ_F_* flags */ | 23 | unsigned long flags; /* BLK_MQ_F_* flags */ |
24 | 24 | ||
25 | void *sched_data; | ||
25 | struct request_queue *queue; | 26 | struct request_queue *queue; |
26 | struct blk_flush_queue *fq; | 27 | struct blk_flush_queue *fq; |
27 | 28 | ||
@@ -35,6 +36,7 @@ struct blk_mq_hw_ctx { | |||
35 | atomic_t wait_index; | 36 | atomic_t wait_index; |
36 | 37 | ||
37 | struct blk_mq_tags *tags; | 38 | struct blk_mq_tags *tags; |
39 | struct blk_mq_tags *sched_tags; | ||
38 | 40 | ||
39 | struct srcu_struct queue_rq_srcu; | 41 | struct srcu_struct queue_rq_srcu; |
40 | 42 | ||
@@ -156,6 +158,7 @@ enum { | |||
156 | 158 | ||
157 | BLK_MQ_S_STOPPED = 0, | 159 | BLK_MQ_S_STOPPED = 0, |
158 | BLK_MQ_S_TAG_ACTIVE = 1, | 160 | BLK_MQ_S_TAG_ACTIVE = 1, |
161 | BLK_MQ_S_SCHED_RESTART = 2, | ||
159 | 162 | ||
160 | BLK_MQ_MAX_DEPTH = 10240, | 163 | BLK_MQ_MAX_DEPTH = 10240, |
161 | 164 | ||
@@ -179,13 +182,13 @@ void blk_mq_free_tag_set(struct blk_mq_tag_set *set); | |||
179 | 182 | ||
180 | void blk_mq_flush_plug_list(struct blk_plug *plug, bool from_schedule); | 183 | void blk_mq_flush_plug_list(struct blk_plug *plug, bool from_schedule); |
181 | 184 | ||
182 | void blk_mq_insert_request(struct request *, bool, bool, bool); | ||
183 | void blk_mq_free_request(struct request *rq); | 185 | void blk_mq_free_request(struct request *rq); |
184 | bool blk_mq_can_queue(struct blk_mq_hw_ctx *); | 186 | bool blk_mq_can_queue(struct blk_mq_hw_ctx *); |
185 | 187 | ||
186 | enum { | 188 | enum { |
187 | BLK_MQ_REQ_NOWAIT = (1 << 0), /* return when out of requests */ | 189 | BLK_MQ_REQ_NOWAIT = (1 << 0), /* return when out of requests */ |
188 | BLK_MQ_REQ_RESERVED = (1 << 1), /* allocate from reserved pool */ | 190 | BLK_MQ_REQ_RESERVED = (1 << 1), /* allocate from reserved pool */ |
191 | BLK_MQ_REQ_INTERNAL = (1 << 2), /* allocate internal/sched tag */ | ||
189 | }; | 192 | }; |
190 | 193 | ||
191 | struct request *blk_mq_alloc_request(struct request_queue *q, int rw, | 194 | struct request *blk_mq_alloc_request(struct request_queue *q, int rw, |