|
@@ -4969,16 +4969,21 @@ nfsd4_find_reclaim_client(const char *recdir, struct nfsd_net *nn)
|
|
|
* Called from OPEN. Look for clientid in reclaim list.
|
|
|
*/
|
|
|
__be32
|
|
|
-nfs4_check_open_reclaim(clientid_t *clid, bool sessions, struct nfsd_net *nn)
|
|
|
+nfs4_check_open_reclaim(clientid_t *clid,
|
|
|
+ struct nfsd4_compound_state *cstate,
|
|
|
+ struct nfsd_net *nn)
|
|
|
{
|
|
|
- struct nfs4_client *clp;
|
|
|
+ __be32 status;
|
|
|
|
|
|
/* find clientid in conf_id_hashtbl */
|
|
|
- clp = find_confirmed_client(clid, sessions, nn);
|
|
|
- if (clp == NULL)
|
|
|
+ status = lookup_clientid(clid, cstate, nn);
|
|
|
+ if (status)
|
|
|
return nfserr_reclaim_bad;
|
|
|
|
|
|
- return nfsd4_client_record_check(clp) ? nfserr_reclaim_bad : nfs_ok;
|
|
|
+ if (nfsd4_client_record_check(cstate->clp))
|
|
|
+ return nfserr_reclaim_bad;
|
|
|
+
|
|
|
+ return nfs_ok;
|
|
|
}
|
|
|
|
|
|
#ifdef CONFIG_NFSD_FAULT_INJECTION
|