rbd: introduce OWN_BVECS data type
authorIlya Dryomov <idryomov@gmail.com>
Tue, 6 Feb 2018 18:26:35 +0000 (19:26 +0100)
committerIlya Dryomov <idryomov@gmail.com>
Mon, 2 Apr 2018 08:12:44 +0000 (10:12 +0200)
commitafb978884c3ec17227626eb371130a97671e5238
tree2857a22c333bae9a944cdca4c1c8f934c12290a7
parente93aca0abb8b9f8fd23675dc9110b7517964657a
rbd: introduce OWN_BVECS data type

If the layout is "fancy", we need to be able to rearrange the provided
bio_vecs in stripe unit chunks to make it possible for the messenger to
read/write directly from/to the provided data buffer, without employing
a temporary data buffer for assembling the result.

Higher level bio_vec arrays are generally immutable, so this requires
copying into a private array.  Only the bio_vecs themselves are shuffled
around, not the actual data.  OWN_BVECS doesn't own any pages.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
drivers/block/rbd.c