diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2015-04-02 02:17:51 +0200 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2015-04-12 04:28:25 +0200 |
commit | 070b3656cf228eaaef7b28b59264c5c7cdbdd0fb (patch) | |
tree | 76040fdba3e0703df0be897aba7310332454d60e /include/net/9p | |
parent | net/9p: switch the guts of p9_client_{read,write}() to iov_iter (diff) | |
download | linux-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.h | 5 |
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); |