diff options
author | Jens Axboe <axboe@kernel.dk> | 2019-02-27 13:05:25 -0700 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2019-03-18 10:44:48 -0600 |
commit | 875f1d0769cdcfe1596ff0ca609b453359e42ec9 (patch) | |
tree | 7a62a8236e2412bc136376e0c22114b5e631f98a /block | |
parent | bf33a7699e992b12d4c7d39dc3f0b61f6b26c5c2 (diff) | |
download | linux-875f1d0769cdcfe1596ff0ca609b453359e42ec9.tar.bz2 |
iov_iter: add ITER_BVEC_FLAG_NO_REF flag
For ITER_BVEC, if we're holding on to kernel pages, the caller
doesn't need to grab a reference to the bvec pages, and drop that
same reference on IO completion. This is essentially safe for any
ITER_BVEC, but some use cases end up reusing pages and uncondtionally
dropping a page reference on completion. And example of that is
sendfile(2), that ends up being a splice_in + splice_out on the
pipe pages.
Add a flag that tells us it's fine to not grab a page reference
to the bvec pages, since that caller knows not to drop a reference
when it's done with the pages.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block')
0 files changed, 0 insertions, 0 deletions