Lines Matching +full:multi +full:- +full:block

8 Instead, we have a new struct bvec_iter which represents a range of a biovec -
22 There are a bunch of new helper macros for hiding the gory details - in
37 wrapper around bio_advance_iter() that operates on bio->bi_iter, and also
40 There is a lower level advance function - bvec_iter_advance() - which takes
52 exactly one bvec at a time - for example, bio_copy_data() in block/bio.c,
54 wouldn't necessarily be the same size, the old code was tricky convoluted -
58 The new code is much more straightforward - have a look. This sort of
66 - again, this was being done in a fair number of places.
68 * Biovecs can be shared between multiple bios - a bvec iter can represent an
72 reached the end of a bio, not bi_vcnt - and the bio_iovec() macro takes
77 size bios - because the new bio can share the old bio's biovec.
83 * Submitting partially completed bios is now perfectly fine - this comes up
84 occasionally in stacking block drivers and various code (e.g. md and
90 since all drivers _must_ go through the bvec iterator - and have been
91 audited to make sure they are - submitting partially completed bios is
101 I.e. instead of using bio_iovec_idx() (or bio->bi_iovec[bio->bi_idx]), you
103 literal struct bio_vec - constructed on the fly from the raw biovec but
106 * bi_vcnt can't be trusted or relied upon by driver code - i.e. anything that
108 actually needed for iterating over the bio anymore - we only use bi_size.
111 over all the biovecs in the new bio - which is silly as it's not needed.
115 * The current interface allows the block layer to split bios as needed, so we
120 there's no need to define ->merge_bvec_fn() callbacks for individual block
127 on non-BIO_CLONED bio. They are usually used by filesystem code. Drivers
140 * The following helpers iterate over single-page segment. The passed 'struct
141 bio_vec' will contain a single-page IO vector during the iteration::
146 * The following helpers iterate over multi-page bvec. The passed 'struct
147 bio_vec' will contain a multi-page IO vector during the iteration::