mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
block: add a poll_fn callback to struct request_queue
That we we can also poll non blk-mq queues. Mostly needed for the NVMe multipath code, but could also be useful elsewhere. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Hannes Reinecke <hare@suse.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
8ddcd65325
commit
ea435e1b93
8 changed files with 25 additions and 16 deletions
|
@ -266,6 +266,7 @@ struct blk_queue_ctx;
|
|||
|
||||
typedef void (request_fn_proc) (struct request_queue *q);
|
||||
typedef blk_qc_t (make_request_fn) (struct request_queue *q, struct bio *bio);
|
||||
typedef bool (poll_q_fn) (struct request_queue *q, blk_qc_t);
|
||||
typedef int (prep_rq_fn) (struct request_queue *, struct request *);
|
||||
typedef void (unprep_rq_fn) (struct request_queue *, struct request *);
|
||||
|
||||
|
@ -408,6 +409,7 @@ struct request_queue {
|
|||
|
||||
request_fn_proc *request_fn;
|
||||
make_request_fn *make_request_fn;
|
||||
poll_q_fn *poll_fn;
|
||||
prep_rq_fn *prep_rq_fn;
|
||||
unprep_rq_fn *unprep_rq_fn;
|
||||
softirq_done_fn *softirq_done_fn;
|
||||
|
@ -975,7 +977,7 @@ extern void blk_execute_rq_nowait(struct request_queue *, struct gendisk *,
|
|||
int blk_status_to_errno(blk_status_t status);
|
||||
blk_status_t errno_to_blk_status(int errno);
|
||||
|
||||
bool blk_mq_poll(struct request_queue *q, blk_qc_t cookie);
|
||||
bool blk_poll(struct request_queue *q, blk_qc_t cookie);
|
||||
|
||||
static inline struct request_queue *bdev_get_queue(struct block_device *bdev)
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue