That we we can also poll non blk-mq queues. Mostly needed for the NVMe multipath code, but could also be useful elsewhere.
Showing the changes to include/linux/blkdev.h (1 of 8 files). Show all
Unified · Split
| @@ -266,6 +266,7 @@ struct blk_queue_ctx; · 265 unmodified lines | |||
| 266 | 266 | ||
| 267 | typedef void (request_fn_proc) (struct request_queue *q); | 267 | typedef void (request_fn_proc) (struct request_queue *q); |
| 268 | typedef blk_qc_t (make_request_fn) (struct request_queue *q, struct bio *bio); | 268 | typedef blk_qc_t (make_request_fn) (struct request_queue *q, struct bio *bio); |
| 269 | typedef bool (poll_q_fn) (struct request_queue *q, blk_qc_t); | ||
| 269 | typedef int (prep_rq_fn) (struct request_queue *, struct request *); | 270 | typedef int (prep_rq_fn) (struct request_queue *, struct request *); |
| 270 | typedef void (unprep_rq_fn) (struct request_queue *, struct request *); | 271 | typedef void (unprep_rq_fn) (struct request_queue *, struct request *); |
| 271 | 272 | ||
| @@ -408,6 +409,7 @@ struct request_queue { · 136 unmodified lines | |||
| 408 | 409 | ||
| 409 | request_fn_proc *request_fn; | 410 | request_fn_proc *request_fn; |
| 410 | make_request_fn *make_request_fn; | 411 | make_request_fn *make_request_fn; |
| 412 | poll_q_fn *poll_fn; | ||
| 411 | prep_rq_fn *prep_rq_fn; | 413 | prep_rq_fn *prep_rq_fn; |
| 412 | unprep_rq_fn *unprep_rq_fn; | 414 | unprep_rq_fn *unprep_rq_fn; |
| 413 | softirq_done_fn *softirq_done_fn; | 415 | softirq_done_fn *softirq_done_fn; |
| @@ -975,7 +977,7 @@ extern void blk_execute_rq_nowait(struct request_queue *, struct gendisk *, · 561 unmodified lines | |||
| 975 | int blk_status_to_errno(blk_status_t status); | 977 | int blk_status_to_errno(blk_status_t status); |
| 976 | blk_status_t errno_to_blk_status(int errno); | 978 | blk_status_t errno_to_blk_status(int errno); |
| 977 | 979 | ||
| 978 | bool blk_mq_poll(struct request_queue *q, blk_qc_t cookie); | 980 | bool blk_poll(struct request_queue *q, blk_qc_t cookie); |
| 979 | 981 | ||
| 980 | static inline struct request_queue *bdev_get_queue(struct block_device *bdev) | 982 | static inline struct request_queue *bdev_get_queue(struct block_device *bdev) |
| 981 | { | 983 | { |