Loading fs/nfsd/nfs4state.c +7 −6 Original line number Diff line number Diff line Loading @@ -3607,11 +3607,12 @@ static void nfsd4_open_deleg_none_ext(struct nfsd4_open *open, int status) * proper support for them. */ static void nfs4_open_delegation(struct net *net, struct svc_fh *fh, struct nfsd4_open *open, struct nfs4_ol_stateid *stp) nfs4_open_delegation(struct svc_fh *fh, struct nfsd4_open *open, struct nfs4_ol_stateid *stp) { struct nfs4_delegation *dp; struct nfs4_openowner *oo = container_of(stp->st_stateowner, struct nfs4_openowner, oo_owner); struct nfs4_openowner *oo = openowner(stp->st_stateowner); struct nfs4_client *clp = stp->st_stid.sc_client; int cb_up; int status = 0; Loading @@ -3630,7 +3631,7 @@ nfs4_open_delegation(struct net *net, struct svc_fh *fh, * Let's not give out any delegations till everyone's * had the chance to reclaim theirs.... */ if (locks_in_grace(net)) if (locks_in_grace(clp->net)) goto out_no_deleg; if (!cb_up || !(oo->oo_flags & NFS4_OO_CONFIRMED)) goto out_no_deleg; Loading @@ -3649,7 +3650,7 @@ nfs4_open_delegation(struct net *net, struct svc_fh *fh, default: goto out_no_deleg; } dp = alloc_init_deleg(oo->oo_owner.so_client, fh); dp = alloc_init_deleg(clp, fh); if (dp == NULL) goto out_no_deleg; status = nfs4_set_delegation(dp, stp->st_file); Loading Loading @@ -3762,7 +3763,7 @@ nfsd4_process_open2(struct svc_rqst *rqstp, struct svc_fh *current_fh, struct nf * Attempt to hand out a delegation. No error return, because the * OPEN succeeds even if we fail. */ nfs4_open_delegation(SVC_NET(rqstp), current_fh, open, stp); nfs4_open_delegation(current_fh, open, stp); nodeleg: status = nfs_ok; Loading Loading
fs/nfsd/nfs4state.c +7 −6 Original line number Diff line number Diff line Loading @@ -3607,11 +3607,12 @@ static void nfsd4_open_deleg_none_ext(struct nfsd4_open *open, int status) * proper support for them. */ static void nfs4_open_delegation(struct net *net, struct svc_fh *fh, struct nfsd4_open *open, struct nfs4_ol_stateid *stp) nfs4_open_delegation(struct svc_fh *fh, struct nfsd4_open *open, struct nfs4_ol_stateid *stp) { struct nfs4_delegation *dp; struct nfs4_openowner *oo = container_of(stp->st_stateowner, struct nfs4_openowner, oo_owner); struct nfs4_openowner *oo = openowner(stp->st_stateowner); struct nfs4_client *clp = stp->st_stid.sc_client; int cb_up; int status = 0; Loading @@ -3630,7 +3631,7 @@ nfs4_open_delegation(struct net *net, struct svc_fh *fh, * Let's not give out any delegations till everyone's * had the chance to reclaim theirs.... */ if (locks_in_grace(net)) if (locks_in_grace(clp->net)) goto out_no_deleg; if (!cb_up || !(oo->oo_flags & NFS4_OO_CONFIRMED)) goto out_no_deleg; Loading @@ -3649,7 +3650,7 @@ nfs4_open_delegation(struct net *net, struct svc_fh *fh, default: goto out_no_deleg; } dp = alloc_init_deleg(oo->oo_owner.so_client, fh); dp = alloc_init_deleg(clp, fh); if (dp == NULL) goto out_no_deleg; status = nfs4_set_delegation(dp, stp->st_file); Loading Loading @@ -3762,7 +3763,7 @@ nfsd4_process_open2(struct svc_rqst *rqstp, struct svc_fh *current_fh, struct nf * Attempt to hand out a delegation. No error return, because the * OPEN succeeds even if we fail. */ nfs4_open_delegation(SVC_NET(rqstp), current_fh, open, stp); nfs4_open_delegation(current_fh, open, stp); nodeleg: status = nfs_ok; Loading