diff options
author | Kent Overstreet <kmo@daterainc.com> | 2013-08-07 14:26:21 -0700 |
---|---|---|
committer | Kent Overstreet <kmo@daterainc.com> | 2013-11-23 22:33:49 -0800 |
commit | 4550dd6c6b062fc5e5b647296d55da22616123c3 (patch) | |
tree | 9ca83cc0283151980b7c2f18c0e928aa34a2a0d9 /include/linux/blk_types.h | |
parent | 7988613b0e5b2638caf6cd493cc78e9595eba19c (diff) | |
download | linux-stable-4550dd6c6b062fc5e5b647296d55da22616123c3.tar.gz linux-stable-4550dd6c6b062fc5e5b647296d55da22616123c3.tar.bz2 linux-stable-4550dd6c6b062fc5e5b647296d55da22616123c3.zip |
block: Immutable bio vecs
This adds a mechanism by which we can advance a bio by an arbitrary
number of bytes without modifying the biovec: bio->bi_iter.bi_bvec_done
indicates the number of bytes completed in the current bvec.
Various driver code still needs to be updated to not refer to the bvec
directly before we can use this for interesting things, like efficient
bio splitting.
Signed-off-by: Kent Overstreet <kmo@daterainc.com>
Cc: Jens Axboe <axboe@kernel.dk>
Cc: Lars Ellenberg <drbd-dev@lists.linbit.com>
Cc: Paul Clements <Paul.Clements@steeleye.com>
Cc: drbd-user@lists.linbit.com
Cc: nbd-general@lists.sourceforge.net
Diffstat (limited to 'include/linux/blk_types.h')
-rw-r--r-- | include/linux/blk_types.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/blk_types.h b/include/linux/blk_types.h index 29b5b84d8a29..d369f8f6af79 100644 --- a/include/linux/blk_types.h +++ b/include/linux/blk_types.h @@ -34,6 +34,9 @@ struct bvec_iter { unsigned int bi_size; /* residual I/O count */ unsigned int bi_idx; /* current index into bvl_vec */ + + unsigned int bi_bvec_done; /* number of bytes completed in + current bvec */ }; /* |