Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 68782
b: refs/heads/master
c: 1b1a9b3
h: refs/heads/master
v: v3
  • Loading branch information
J. Bruce Fields committed Oct 9, 2007
1 parent 629e8e6 commit 810e33e
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 15 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 0272e1fd9f4fa8a43357c168e081744f99e67195
refs/heads/master: 1b1a9b3163a83f52ea2ac333846d4dfd2c4edd90
27 changes: 13 additions & 14 deletions trunk/fs/nfsd/nfs4state.c
Original file line number Diff line number Diff line change
Expand Up @@ -358,9 +358,22 @@ alloc_client(struct xdr_netobj name)
return clp;
}

static void
shutdown_callback_client(struct nfs4_client *clp)
{
struct rpc_clnt *clnt = clp->cl_callback.cb_client;

/* shutdown rpc client, ending any outstanding recall rpcs */
if (clnt) {
clp->cl_callback.cb_client = NULL;
rpc_shutdown_client(clnt);
}
}

static inline void
free_client(struct nfs4_client *clp)
{
shutdown_callback_client(clp);
if (clp->cl_cred.cr_group_info)
put_group_info(clp->cl_cred.cr_group_info);
kfree(clp->cl_name.data);
Expand All @@ -374,18 +387,6 @@ put_nfs4_client(struct nfs4_client *clp)
free_client(clp);
}

static void
shutdown_callback_client(struct nfs4_client *clp)
{
struct rpc_clnt *clnt = clp->cl_callback.cb_client;

/* shutdown rpc client, ending any outstanding recall rpcs */
if (clnt) {
clp->cl_callback.cb_client = NULL;
rpc_shutdown_client(clnt);
}
}

static void
expire_client(struct nfs4_client *clp)
{
Expand All @@ -396,8 +397,6 @@ expire_client(struct nfs4_client *clp)
dprintk("NFSD: expire_client cl_count %d\n",
atomic_read(&clp->cl_count));

shutdown_callback_client(clp);

INIT_LIST_HEAD(&reaplist);
spin_lock(&recall_lock);
while (!list_empty(&clp->cl_delegations)) {
Expand Down

0 comments on commit 810e33e

Please sign in to comment.