diff options
Diffstat (limited to 'fs')
-rw-r--r-- | fs/nfsd/export.c | 5 | ||||
-rw-r--r-- | fs/nfsd/nfs4proc.c | 7 | ||||
-rw-r--r-- | fs/nfsd/nfs4xdr.c | 2 |
3 files changed, 6 insertions, 8 deletions
diff --git a/fs/nfsd/export.c b/fs/nfsd/export.c index fbbbcc5a2fa3..af6abb2529c9 100644 --- a/fs/nfsd/export.c +++ b/fs/nfsd/export.c | |||
@@ -1235,8 +1235,7 @@ exp_find(struct auth_domain *clp, int fsid_type, u32 *fsidv, | |||
1235 | * export point with fsid==0 | 1235 | * export point with fsid==0 |
1236 | */ | 1236 | */ |
1237 | __be32 | 1237 | __be32 |
1238 | exp_pseudoroot(struct auth_domain *clp, struct svc_fh *fhp, | 1238 | exp_pseudoroot(struct svc_rqst *rqstp, struct svc_fh *fhp) |
1239 | struct cache_req *creq) | ||
1240 | { | 1239 | { |
1241 | struct svc_export *exp; | 1240 | struct svc_export *exp; |
1242 | __be32 rv; | 1241 | __be32 rv; |
@@ -1244,7 +1243,7 @@ exp_pseudoroot(struct auth_domain *clp, struct svc_fh *fhp, | |||
1244 | 1243 | ||
1245 | mk_fsid(FSID_NUM, fsidv, 0, 0, 0, NULL); | 1244 | mk_fsid(FSID_NUM, fsidv, 0, 0, 0, NULL); |
1246 | 1245 | ||
1247 | exp = exp_find(clp, FSID_NUM, fsidv, creq); | 1246 | exp = exp_find(rqstp->rq_client, FSID_NUM, fsidv, rqstp->rq_chandle); |
1248 | if (PTR_ERR(exp) == -ENOENT) | 1247 | if (PTR_ERR(exp) == -ENOENT) |
1249 | return nfserr_perm; | 1248 | return nfserr_perm; |
1250 | if (IS_ERR(exp)) | 1249 | if (IS_ERR(exp)) |
diff --git a/fs/nfsd/nfs4proc.c b/fs/nfsd/nfs4proc.c index 8522729830db..a106e3be7c13 100644 --- a/fs/nfsd/nfs4proc.c +++ b/fs/nfsd/nfs4proc.c | |||
@@ -286,8 +286,7 @@ nfsd4_putrootfh(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate, | |||
286 | __be32 status; | 286 | __be32 status; |
287 | 287 | ||
288 | fh_put(&cstate->current_fh); | 288 | fh_put(&cstate->current_fh); |
289 | status = exp_pseudoroot(rqstp->rq_client, &cstate->current_fh, | 289 | status = exp_pseudoroot(rqstp, &cstate->current_fh); |
290 | &rqstp->rq_chandle); | ||
291 | return status; | 290 | return status; |
292 | } | 291 | } |
293 | 292 | ||
@@ -474,8 +473,8 @@ nfsd4_lookupp(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate, | |||
474 | __be32 ret; | 473 | __be32 ret; |
475 | 474 | ||
476 | fh_init(&tmp_fh, NFS4_FHSIZE); | 475 | fh_init(&tmp_fh, NFS4_FHSIZE); |
477 | if((ret = exp_pseudoroot(rqstp->rq_client, &tmp_fh, | 476 | ret = exp_pseudoroot(rqstp, &tmp_fh); |
478 | &rqstp->rq_chandle)) != 0) | 477 | if (ret) |
479 | return ret; | 478 | return ret; |
480 | if (tmp_fh.fh_dentry == cstate->current_fh.fh_dentry) { | 479 | if (tmp_fh.fh_dentry == cstate->current_fh.fh_dentry) { |
481 | fh_put(&tmp_fh); | 480 | fh_put(&tmp_fh); |
diff --git a/fs/nfsd/nfs4xdr.c b/fs/nfsd/nfs4xdr.c index 15809dfd88a5..b0bfbda375e1 100644 --- a/fs/nfsd/nfs4xdr.c +++ b/fs/nfsd/nfs4xdr.c | |||
@@ -1296,7 +1296,7 @@ static char *nfsd4_path(struct svc_rqst *rqstp, struct svc_export *exp, __be32 * | |||
1296 | char *path, *rootpath; | 1296 | char *path, *rootpath; |
1297 | 1297 | ||
1298 | fh_init(&tmp_fh, NFS4_FHSIZE); | 1298 | fh_init(&tmp_fh, NFS4_FHSIZE); |
1299 | *stat = exp_pseudoroot(rqstp->rq_client, &tmp_fh, &rqstp->rq_chandle); | 1299 | *stat = exp_pseudoroot(rqstp, &tmp_fh); |
1300 | if (*stat) | 1300 | if (*stat) |
1301 | return NULL; | 1301 | return NULL; |
1302 | rootpath = tmp_fh.fh_export->ex_path; | 1302 | rootpath = tmp_fh.fh_export->ex_path; |