Skip to content

Commit 2f4873f

Browse files
johnpgarryaxboe
authored andcommitted
block: Make bio_iov_bvec_set() accept pointer to const iov_iter
Make bio_iov_bvec_set() accept a pointer to const iov_iter, which means that we can drop the undesirable casting to struct iov_iter pointer in blk_rq_map_user_bvec(). Signed-off-by: John Garry <[email protected]> Reviewed-by: Christoph Hellwig <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Jens Axboe <[email protected]>
1 parent 790eb09 commit 2f4873f

File tree

3 files changed

+3
-3
lines changed

3 files changed

+3
-3
lines changed

block/bio.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1171,7 +1171,7 @@ void __bio_release_pages(struct bio *bio, bool mark_dirty)
11711171
}
11721172
EXPORT_SYMBOL_GPL(__bio_release_pages);
11731173

1174-
void bio_iov_bvec_set(struct bio *bio, struct iov_iter *iter)
1174+
void bio_iov_bvec_set(struct bio *bio, const struct iov_iter *iter)
11751175
{
11761176
WARN_ON_ONCE(bio->bi_max_vecs);
11771177

block/blk-map.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -574,7 +574,7 @@ static int blk_rq_map_user_bvec(struct request *rq, const struct iov_iter *iter)
574574
bio = blk_rq_map_bio_alloc(rq, 0, GFP_KERNEL);
575575
if (!bio)
576576
return -ENOMEM;
577-
bio_iov_bvec_set(bio, (struct iov_iter *)iter);
577+
bio_iov_bvec_set(bio, iter);
578578

579579
/* check that the data layout matches the hardware restrictions */
580580
ret = bio_split_rw_at(bio, lim, &nsegs, max_bytes);

include/linux/bio.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -423,7 +423,7 @@ void __bio_add_page(struct bio *bio, struct page *page,
423423
void bio_add_folio_nofail(struct bio *bio, struct folio *folio, size_t len,
424424
size_t off);
425425
int bio_iov_iter_get_pages(struct bio *bio, struct iov_iter *iter);
426-
void bio_iov_bvec_set(struct bio *bio, struct iov_iter *iter);
426+
void bio_iov_bvec_set(struct bio *bio, const struct iov_iter *iter);
427427
void __bio_release_pages(struct bio *bio, bool mark_dirty);
428428
extern void bio_set_pages_dirty(struct bio *bio);
429429
extern void bio_check_pages_dirty(struct bio *bio);

0 commit comments

Comments
 (0)