This adds a set of iov_iter_ops calls which work with memory which is
specified by an array of bio_vec structs instead of an array of iovec
structs.
The big difference is that the pages referenced by the bio_vec elements
are pinned. They don't need to be faulted in and we can always use
kmap_atomic() to map them one at a time.
Signed-off-by: Zach Brown <zab@zabbo.net> Signed-off-by: Dave Kleikamp <dave.kleikamp@oracle.com> Tested-by: Sedat Dilek <sedat.dilek@gmail.com>