summaryrefslogtreecommitdiffstats
path: root/include/net/9p
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2015-04-02 02:17:51 +0200
committerAl Viro <viro@zeniv.linux.org.uk>2015-04-12 04:28:25 +0200
commit070b3656cf228eaaef7b28b59264c5c7cdbdd0fb (patch)
tree76040fdba3e0703df0be897aba7310332454d60e /include/net/9p
parentnet/9p: switch the guts of p9_client_{read,write}() to iov_iter (diff)
downloadlinux-070b3656cf228eaaef7b28b59264c5c7cdbdd0fb.tar.xz
linux-070b3656cf228eaaef7b28b59264c5c7cdbdd0fb.zip
9p: switch p9_client_write() to passing it struct iov_iter *
... and make it loop until it's done Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'include/net/9p')
-rw-r--r--include/net/9p/client.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/include/net/9p/client.h b/include/net/9p/client.h
index 6fab66c5c5af..63ae7653389d 100644
--- a/include/net/9p/client.h
+++ b/include/net/9p/client.h
@@ -211,6 +211,8 @@ struct p9_dirent {
char d_name[256];
};
+struct iov_iter;
+
int p9_client_statfs(struct p9_fid *fid, struct p9_rstatfs *sb);
int p9_client_rename(struct p9_fid *fid, struct p9_fid *newdirfid,
const char *name);
@@ -238,8 +240,7 @@ int p9_client_remove(struct p9_fid *fid);
int p9_client_unlinkat(struct p9_fid *dfid, const char *name, int flags);
int p9_client_read(struct p9_fid *fid, char *data, char __user *udata,
u64 offset, u32 count);
-int p9_client_write(struct p9_fid *fid, char *data, const char __user *udata,
- u64 offset, u32 count);
+int p9_client_write(struct p9_fid *fid, u64 offset, struct iov_iter *from, int *err);
int p9_client_readdir(struct p9_fid *fid, char *data, u32 count, u64 offset);
int p9dirent_read(struct p9_client *clnt, char *buf, int len,
struct p9_dirent *dirent);