]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/commit - lib/iov_iter.c
[iov_iter] new primitives - copy_from_iter_full() and friends
authorAl Viro <viro@zeniv.linux.org.uk>
Wed, 2 Nov 2016 02:09:04 +0000 (22:09 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Mon, 5 Dec 2016 19:33:36 +0000 (14:33 -0500)
commitcbbd26b8b1a6af9c02e2b6523e12bd50cc765059
tree6d1b258c99e83f320cf3611bdc927121df7e9b03
parente5517c2a5a49ed5e99047008629f1cd60246ea0e
[iov_iter] new primitives - copy_from_iter_full() and friends

copy_from_iter_full(), copy_from_iter_full_nocache() and
csum_and_copy_from_iter_full() - counterparts of copy_from_iter()
et.al., advancing iterator only in case of successful full copy
and returning whether it had been successful or not.

Convert some obvious users.  *NOTE* - do not blindly assume that
something is a good candidate for those unless you are sure that
not advancing iov_iter in failure case is the right thing in
this case.  Anything that does short read/short write kind of
stuff (or is in a loop, etc.) is unlikely to be a good one.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
17 files changed:
drivers/bluetooth/hci_vhci.c
drivers/net/macvtap.c
drivers/net/tun.c
drivers/usb/gadget/function/f_fs.c
drivers/usb/gadget/legacy/inode.c
drivers/vhost/scsi.c
drivers/vhost/vhost.c
fs/ncpfs/file.c
fs/orangefs/devorangefs-req.c
include/linux/uio.h
kernel/printk/printk.c
lib/iov_iter.c
net/atm/common.c
net/bluetooth/l2cap_core.c
net/packet/af_packet.c
net/tipc/msg.c
security/keys/keyctl.c