diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2014-03-05 19:28:09 -0500 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2014-05-06 17:32:49 -0400 |
commit | 71d8e532b1549a478e6a6a8a44f309d050294d00 (patch) | |
tree | 58b40c17cbb806c94aa07121a8b010d16f825d27 /fs/fuse | |
parent | ed978a811ec528dbe40243605c3afab55892f722 (diff) |
start adding the tag to iov_iter
For now, just use the same thing we pass to ->direct_IO() - it's all
iovec-based at the moment. Pass it explicitly to iov_iter_init() and
account for kvec vs. iovec in there, by the same kludge NFS ->direct_IO()
uses.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/fuse')
-rw-r--r-- | fs/fuse/file.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/fs/fuse/file.c b/fs/fuse/file.c index fc54d04a41e2..4a5519ca253f 100644 --- a/fs/fuse/file.c +++ b/fs/fuse/file.c | |||
@@ -1217,7 +1217,7 @@ static ssize_t fuse_file_aio_write(struct kiocb *iocb, const struct iovec *iov, | |||
1217 | err = generic_write_checks(file, &pos, &count, S_ISBLK(inode->i_mode)); | 1217 | err = generic_write_checks(file, &pos, &count, S_ISBLK(inode->i_mode)); |
1218 | if (err) | 1218 | if (err) |
1219 | goto out; | 1219 | goto out; |
1220 | iov_iter_init(&i, iov, nr_segs, count, 0); | 1220 | iov_iter_init(&i, WRITE, iov, nr_segs, count); |
1221 | 1221 | ||
1222 | if (count == 0) | 1222 | if (count == 0) |
1223 | goto out; | 1223 | goto out; |
@@ -1386,7 +1386,7 @@ ssize_t fuse_direct_io(struct fuse_io_priv *io, const struct iovec *iov, | |||
1386 | struct fuse_req *req; | 1386 | struct fuse_req *req; |
1387 | struct iov_iter ii; | 1387 | struct iov_iter ii; |
1388 | 1388 | ||
1389 | iov_iter_init(&ii, iov, nr_segs, count, 0); | 1389 | iov_iter_init(&ii, write ? WRITE : READ, iov, nr_segs, count); |
1390 | 1390 | ||
1391 | if (io->async) | 1391 | if (io->async) |
1392 | req = fuse_get_req_for_background(fc, fuse_iter_npages(&ii)); | 1392 | req = fuse_get_req_for_background(fc, fuse_iter_npages(&ii)); |
@@ -2367,7 +2367,7 @@ static int fuse_ioctl_copy_user(struct page **pages, struct iovec *iov, | |||
2367 | if (!bytes) | 2367 | if (!bytes) |
2368 | return 0; | 2368 | return 0; |
2369 | 2369 | ||
2370 | iov_iter_init(&ii, iov, nr_segs, bytes, 0); | 2370 | iov_iter_init(&ii, to_user ? READ : WRITE, iov, nr_segs, bytes); |
2371 | 2371 | ||
2372 | while (iov_iter_count(&ii)) { | 2372 | while (iov_iter_count(&ii)) { |
2373 | struct page *page = pages[page_idx++]; | 2373 | struct page *page = pages[page_idx++]; |