|
@@ -625,15 +625,14 @@ void afs_pages_written_back(struct afs_vnode *vnode, struct afs_call *call)
|
|
|
/*
|
|
|
* write to an AFS file
|
|
|
*/
|
|
|
-ssize_t afs_file_write(struct kiocb *iocb, const struct iovec *iov,
|
|
|
- unsigned long nr_segs, loff_t pos)
|
|
|
+ssize_t afs_file_write(struct kiocb *iocb, struct iov_iter *from)
|
|
|
{
|
|
|
struct afs_vnode *vnode = AFS_FS_I(file_inode(iocb->ki_filp));
|
|
|
ssize_t result;
|
|
|
- size_t count = iov_length(iov, nr_segs);
|
|
|
+ size_t count = iov_iter_count(from);
|
|
|
|
|
|
- _enter("{%x.%u},{%zu},%lu,",
|
|
|
- vnode->fid.vid, vnode->fid.vnode, count, nr_segs);
|
|
|
+ _enter("{%x.%u},{%zu},",
|
|
|
+ vnode->fid.vid, vnode->fid.vnode, count);
|
|
|
|
|
|
if (IS_SWAPFILE(&vnode->vfs_inode)) {
|
|
|
printk(KERN_INFO
|
|
@@ -644,7 +643,7 @@ ssize_t afs_file_write(struct kiocb *iocb, const struct iovec *iov,
|
|
|
if (!count)
|
|
|
return 0;
|
|
|
|
|
|
- result = generic_file_aio_write(iocb, iov, nr_segs, pos);
|
|
|
+ result = generic_file_write_iter(iocb, from);
|
|
|
if (IS_ERR_VALUE(result)) {
|
|
|
_leave(" = %zd", result);
|
|
|
return result;
|