]> git.karo-electronics.de Git - karo-tx-linux.git/commit
iov_iter: hide iovec details behind ops function pointers
authorZach Brown <zab@zabbo.net>
Fri, 14 Jun 2013 20:54:12 +0000 (15:54 -0500)
committerDave Kleikamp <dave.kleikamp@oracle.com>
Fri, 9 Aug 2013 21:43:30 +0000 (16:43 -0500)
commitd6afd4c4e16e64855070a09fecee96140c129770
tree5b2bd6def4cc7aa424d77d124ee9e89bf473d1f4
parentefc83637e4c48fda97e3c045d773834c86ea1572
iov_iter: hide iovec details behind ops function pointers

This moves the current iov_iter functions behind an ops struct of
function pointers.  The current iov_iter functions all work with memory
which is specified by iovec arrays of user space pointers.

This patch is part of a series that lets us specify memory with bio_vec
arrays of page pointers.  By moving to an iov_iter operation struct we
can add that support in later patches in this series by adding another
set of function pointers.

I only came to this after having initialy tried to teach the current
iov_iter functions about bio_vecs by introducing conditional branches
that dealt with bio_vecs in all the functions.  It wasn't pretty.  This
approach seems to be the lesser evil.

Signed-off-by: Dave Kleikamp <dave.kleikamp@oracle.com>
Cc: Zach Brown <zab@zabbo.net>
fs/cifs/file.c
fs/fuse/file.c
fs/iov-iter.c
include/linux/fs.h