iov_iter: Add mapping and discard iterator types

Add two new iterator types to iov_iter:


     This walks through a set of pages attached to an address_space that
     are pinned or locked, starting at a given page and offset and walking
     for the specified amount of space.  The facility to get a callback each
     time a page is filled is provided.

     This is useful for copying data from socket buffers to inodes in
     network filesystems.


     This is a sink iterator that can only be used in READ mode and just
     discards any data copied to it.

     This can be used to discard any unwanted data a network filesystem is
     sent by a server.

Signed-off-by: David Howells <>
2 files changed