diff options
author | Ming Lei <ming.lei@redhat.com> | 2025-03-25 21:51:51 +0800 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2025-04-02 07:06:59 -0600 |
commit | 149974fdb8e186a1c72b87cee806373624a8a375 (patch) | |
tree | 3b4fc553630a62fb00dde16b9ea962001182619d /include | |
parent | 8622b20f23ed165f48b8ca61503a107d17f8d585 (diff) |
block: add for_each_mp_bvec()
Add helper of for_each_mp_bvec() for io_uring to import fixed kernel
buffer.
Signed-off-by: Ming Lei <ming.lei@redhat.com>
Link: https://lore.kernel.org/r/20250325135155.935398-3-ming.lei@redhat.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/bvec.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/include/linux/bvec.h b/include/linux/bvec.h index ba8f52d48b94..204b22a99c4b 100644 --- a/include/linux/bvec.h +++ b/include/linux/bvec.h @@ -184,6 +184,12 @@ static inline void bvec_iter_advance_single(const struct bio_vec *bv, ((bvl = bvec_iter_bvec((bio_vec), (iter))), 1); \ bvec_iter_advance_single((bio_vec), &(iter), (bvl).bv_len)) +#define for_each_mp_bvec(bvl, bio_vec, iter, start) \ + for (iter = (start); \ + (iter).bi_size && \ + ((bvl = mp_bvec_iter_bvec((bio_vec), (iter))), 1); \ + bvec_iter_advance_single((bio_vec), &(iter), (bvl).bv_len)) + /* for iterating one bio from start to end */ #define BVEC_ITER_ALL_INIT (struct bvec_iter) \ { \ |