Skip to content

Commit

Permalink
nfsd4: fix, consolidate client_has_state
Browse files Browse the repository at this point in the history
Whoops: first, I reimplemented the already-existing has_resources
without noticing; second, I got the test backwards.  I did pick a better
name, though.  Combine the two....

Signed-off-by: J. Bruce Fields <bfields@redhat.com>
  • Loading branch information
J. Bruce Fields committed Jun 1, 2012
1 parent b9831b5 commit 6eccece
Showing 1 changed file with 4 additions and 11 deletions.
15 changes: 4 additions & 11 deletions fs/nfsd/nfs4state.c
Original file line number Diff line number Diff line change
Expand Up @@ -1537,9 +1537,9 @@ static bool client_has_state(struct nfs4_client *clp)
*
* Also note we should probably be using this in 4.0 case too.
*/
return list_empty(&clp->cl_openowners)
&& list_empty(&clp->cl_delegations)
&& list_empty(&clp->cl_sessions);
return !list_empty(&clp->cl_openowners)
|| !list_empty(&clp->cl_delegations)
|| !list_empty(&clp->cl_sessions);
}

__be32
Expand Down Expand Up @@ -2069,13 +2069,6 @@ nfsd4_sequence(struct svc_rqst *rqstp,
return status;
}

static inline bool has_resources(struct nfs4_client *clp)
{
return !list_empty(&clp->cl_openowners)
|| !list_empty(&clp->cl_delegations)
|| !list_empty(&clp->cl_sessions);
}

__be32
nfsd4_destroy_clientid(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate, struct nfsd4_destroy_clientid *dc)
{
Expand All @@ -2089,7 +2082,7 @@ nfsd4_destroy_clientid(struct svc_rqst *rqstp, struct nfsd4_compound_state *csta
if (conf) {
clp = conf;

if (!is_client_expired(conf) && has_resources(conf)) {
if (!is_client_expired(conf) && client_has_state(conf)) {
status = nfserr_clientid_busy;
goto out;
}
Expand Down

0 comments on commit 6eccece

Please sign in to comment.