diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-07-20 19:48:31 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-07-20 19:48:31 -0400 |
| commit | 457f82bac659745f6d5052e4c493d92d62722c9c (patch) | |
| tree | b188adcd36db2a3e0c1ccc5d84d19cc3d6c380bd | |
| parent | eb872c159f15a7d1b3aa2be9ac4cd66abaac6874 (diff) | |
| parent | 9c9ad6162e2aa1e528ed687ccab87fe681ebbef1 (diff) | |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:
9p: Fix incorrect parameters to v9fs_file_readn.
9p: Possible regression in p9_client_stat
9p: default 9p transport module fix
| -rw-r--r-- | fs/9p/vfs_addr.c | 2 | ||||
| -rw-r--r-- | net/9p/client.c | 13 |
2 files changed, 6 insertions, 9 deletions
diff --git a/fs/9p/vfs_addr.c b/fs/9p/vfs_addr.c index 6fcb1e7095cf..92828281a30b 100644 --- a/fs/9p/vfs_addr.c +++ b/fs/9p/vfs_addr.c | |||
| @@ -57,7 +57,7 @@ static int v9fs_vfs_readpage(struct file *filp, struct page *page) | |||
| 57 | buffer = kmap(page); | 57 | buffer = kmap(page); |
| 58 | offset = page_offset(page); | 58 | offset = page_offset(page); |
| 59 | 59 | ||
| 60 | retval = v9fs_file_readn(filp, buffer, NULL, offset, PAGE_CACHE_SIZE); | 60 | retval = v9fs_file_readn(filp, buffer, NULL, PAGE_CACHE_SIZE, offset); |
| 61 | if (retval < 0) | 61 | if (retval < 0) |
| 62 | goto done; | 62 | goto done; |
| 63 | 63 | ||
diff --git a/net/9p/client.c b/net/9p/client.c index dd43a8289b0d..787ccddb85ea 100644 --- a/net/9p/client.c +++ b/net/9p/client.c | |||
| @@ -117,9 +117,6 @@ static int parse_opts(char *opts, struct p9_client *clnt) | |||
| 117 | } | 117 | } |
| 118 | } | 118 | } |
| 119 | 119 | ||
| 120 | if (!clnt->trans_mod) | ||
| 121 | clnt->trans_mod = v9fs_get_default_trans(); | ||
| 122 | |||
| 123 | kfree(options); | 120 | kfree(options); |
| 124 | return ret; | 121 | return ret; |
| 125 | } | 122 | } |
| @@ -689,6 +686,9 @@ struct p9_client *p9_client_create(const char *dev_name, char *options) | |||
| 689 | if (err < 0) | 686 | if (err < 0) |
| 690 | goto error; | 687 | goto error; |
| 691 | 688 | ||
| 689 | if (!clnt->trans_mod) | ||
| 690 | clnt->trans_mod = v9fs_get_default_trans(); | ||
| 691 | |||
| 692 | if (clnt->trans_mod == NULL) { | 692 | if (clnt->trans_mod == NULL) { |
| 693 | err = -EPROTONOSUPPORT; | 693 | err = -EPROTONOSUPPORT; |
| 694 | P9_DPRINTK(P9_DEBUG_ERROR, | 694 | P9_DPRINTK(P9_DEBUG_ERROR, |
| @@ -1098,7 +1098,6 @@ p9_client_read(struct p9_fid *fid, char *data, char __user *udata, u64 offset, | |||
| 1098 | 1098 | ||
| 1099 | if (data) { | 1099 | if (data) { |
| 1100 | memmove(data, dataptr, count); | 1100 | memmove(data, dataptr, count); |
| 1101 | data += count; | ||
| 1102 | } | 1101 | } |
| 1103 | 1102 | ||
| 1104 | if (udata) { | 1103 | if (udata) { |
| @@ -1192,9 +1191,9 @@ struct p9_wstat *p9_client_stat(struct p9_fid *fid) | |||
| 1192 | 1191 | ||
| 1193 | err = p9pdu_readf(req->rc, clnt->dotu, "wS", &ignored, ret); | 1192 | err = p9pdu_readf(req->rc, clnt->dotu, "wS", &ignored, ret); |
| 1194 | if (err) { | 1193 | if (err) { |
| 1195 | ret = ERR_PTR(err); | ||
| 1196 | p9pdu_dump(1, req->rc); | 1194 | p9pdu_dump(1, req->rc); |
| 1197 | goto free_and_error; | 1195 | p9_free_req(clnt, req); |
| 1196 | goto error; | ||
| 1198 | } | 1197 | } |
| 1199 | 1198 | ||
| 1200 | P9_DPRINTK(P9_DEBUG_9P, | 1199 | P9_DPRINTK(P9_DEBUG_9P, |
| @@ -1211,8 +1210,6 @@ struct p9_wstat *p9_client_stat(struct p9_fid *fid) | |||
| 1211 | p9_free_req(clnt, req); | 1210 | p9_free_req(clnt, req); |
| 1212 | return ret; | 1211 | return ret; |
| 1213 | 1212 | ||
| 1214 | free_and_error: | ||
| 1215 | p9_free_req(clnt, req); | ||
| 1216 | error: | 1213 | error: |
| 1217 | kfree(ret); | 1214 | kfree(ret); |
| 1218 | return ERR_PTR(err); | 1215 | return ERR_PTR(err); |
