diff options
Diffstat (limited to 'fs/afs/write.c')
-rw-r--r-- | fs/afs/write.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/fs/afs/write.c b/fs/afs/write.c index a890db4b9898..ab6adfd52516 100644 --- a/fs/afs/write.c +++ b/fs/afs/write.c | |||
@@ -625,15 +625,14 @@ void afs_pages_written_back(struct afs_vnode *vnode, struct afs_call *call) | |||
625 | /* | 625 | /* |
626 | * write to an AFS file | 626 | * write to an AFS file |
627 | */ | 627 | */ |
628 | ssize_t afs_file_write(struct kiocb *iocb, const struct iovec *iov, | 628 | ssize_t afs_file_write(struct kiocb *iocb, struct iov_iter *from) |
629 | unsigned long nr_segs, loff_t pos) | ||
630 | { | 629 | { |
631 | struct afs_vnode *vnode = AFS_FS_I(file_inode(iocb->ki_filp)); | 630 | struct afs_vnode *vnode = AFS_FS_I(file_inode(iocb->ki_filp)); |
632 | ssize_t result; | 631 | ssize_t result; |
633 | size_t count = iov_length(iov, nr_segs); | 632 | size_t count = iov_iter_count(from); |
634 | 633 | ||
635 | _enter("{%x.%u},{%zu},%lu,", | 634 | _enter("{%x.%u},{%zu},", |
636 | vnode->fid.vid, vnode->fid.vnode, count, nr_segs); | 635 | vnode->fid.vid, vnode->fid.vnode, count); |
637 | 636 | ||
638 | if (IS_SWAPFILE(&vnode->vfs_inode)) { | 637 | if (IS_SWAPFILE(&vnode->vfs_inode)) { |
639 | printk(KERN_INFO | 638 | printk(KERN_INFO |
@@ -644,7 +643,7 @@ ssize_t afs_file_write(struct kiocb *iocb, const struct iovec *iov, | |||
644 | if (!count) | 643 | if (!count) |
645 | return 0; | 644 | return 0; |
646 | 645 | ||
647 | result = generic_file_aio_write(iocb, iov, nr_segs, pos); | 646 | result = generic_file_write_iter(iocb, from); |
648 | if (IS_ERR_VALUE(result)) { | 647 | if (IS_ERR_VALUE(result)) { |
649 | _leave(" = %zd", result); | 648 | _leave(" = %zd", result); |
650 | return result; | 649 | return result; |