diff options
Diffstat (limited to 'fs/nfsd/nfssvc.c')
| -rw-r--r-- | fs/nfsd/nfssvc.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/fs/nfsd/nfssvc.c b/fs/nfsd/nfssvc.c index a8c89ae4c743..1190aeaa92be 100644 --- a/fs/nfsd/nfssvc.c +++ b/fs/nfsd/nfssvc.c | |||
| @@ -349,9 +349,7 @@ nfsd_svc(unsigned short port, int nrservs) | |||
| 349 | error = nfsd_racache_init(2*nrservs); | 349 | error = nfsd_racache_init(2*nrservs); |
| 350 | if (error<0) | 350 | if (error<0) |
| 351 | goto out; | 351 | goto out; |
| 352 | error = nfs4_state_start(); | 352 | nfs4_state_start(); |
| 353 | if (error<0) | ||
| 354 | goto out; | ||
| 355 | 353 | ||
| 356 | nfsd_reset_versions(); | 354 | nfsd_reset_versions(); |
| 357 | 355 | ||
| @@ -546,10 +544,8 @@ nfsd_dispatch(struct svc_rqst *rqstp, __be32 *statp) | |||
| 546 | /* Now call the procedure handler, and encode NFS status. */ | 544 | /* Now call the procedure handler, and encode NFS status. */ |
| 547 | nfserr = proc->pc_func(rqstp, rqstp->rq_argp, rqstp->rq_resp); | 545 | nfserr = proc->pc_func(rqstp, rqstp->rq_argp, rqstp->rq_resp); |
| 548 | nfserr = map_new_errors(rqstp->rq_vers, nfserr); | 546 | nfserr = map_new_errors(rqstp->rq_vers, nfserr); |
| 549 | if (nfserr == nfserr_jukebox && rqstp->rq_vers == 2) | ||
| 550 | nfserr = nfserr_dropit; | ||
| 551 | if (nfserr == nfserr_dropit) { | 547 | if (nfserr == nfserr_dropit) { |
| 552 | dprintk("nfsd: Dropping request due to malloc failure!\n"); | 548 | dprintk("nfsd: Dropping request; may be revisited later\n"); |
| 553 | nfsd_cache_update(rqstp, RC_NOCACHE, NULL); | 549 | nfsd_cache_update(rqstp, RC_NOCACHE, NULL); |
| 554 | return 0; | 550 | return 0; |
| 555 | } | 551 | } |
