diff options
author | Jens Axboe <axboe@kernel.dk> | 2018-11-06 23:30:55 +0300 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2018-11-19 18:34:50 +0300 |
commit | 85f4d4b65fdd67f1d6dc9eeb1d91923cef07eb6a (patch) | |
tree | 8a87578fc6753431f9d698703ad0217392916f3e /include | |
parent | 849a370016a5489c49253338507ee6cc4a08df4b (diff) | |
download | linux-85f4d4b65fdd67f1d6dc9eeb1d91923cef07eb6a.tar.xz |
block: have ->poll_fn() return number of entries polled
We currently only really support sync poll, ie poll with 1 IO in flight.
This prepares us for supporting async poll.
Note that the returned value isn't necessarily 100% accurate. If poll
races with IRQ completion, we assume that the fact that the task is now
runnable means we found at least one entry. In reality it could be more
than 1, or not even 1. This is fine, the caller will just need to take
this into account.
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/blkdev.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h index 1ad6eafc43f2..e97c0a3b2262 100644 --- a/include/linux/blkdev.h +++ b/include/linux/blkdev.h @@ -283,7 +283,7 @@ static inline unsigned short req_get_ioprio(struct request *req) struct blk_queue_ctx; 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 (poll_q_fn) (struct request_queue *q, blk_qc_t); struct bio_vec; typedef int (dma_drain_needed_fn)(struct request *); |