Skip to content

Commit

Permalink
[PATCH] knfsd: nfsd4: remove cb_parsed
Browse files Browse the repository at this point in the history
The cb_parsed field is only used by probe_callback, to determine whether the
callback information has been filled in by setclientid.  But there is no way
that probe_callback() can be called without that having already happened, so
that check is superfluous, as is cb_parsed.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
  • Loading branch information
NeilBrown authored and Linus Torvalds committed Jun 24, 2005
1 parent 3e9e3db commit cb36d63
Show file tree
Hide file tree
Showing 3 changed files with 2 additions and 8 deletions.
4 changes: 1 addition & 3 deletions fs/nfsd/nfs4callback.c
Original file line number Diff line number Diff line change
Expand Up @@ -386,9 +386,7 @@ nfsd4_probe_callback(struct nfs4_client *clp)
char hostname[32];
int status;

dprintk("NFSD: probe_callback. cb_parsed %d cb_set %d\n",
cb->cb_parsed, atomic_read(&cb->cb_set));
if (!cb->cb_parsed || atomic_read(&cb->cb_set))
if (atomic_read(&cb->cb_set))
return;

/* Initialize address */
Expand Down
5 changes: 1 addition & 4 deletions fs/nfsd/nfs4state.c
Original file line number Diff line number Diff line change
Expand Up @@ -377,7 +377,6 @@ create_client(struct xdr_netobj name, char *recdir) {
memcpy(clp->cl_recdir, recdir, HEXDIR_LEN);
atomic_set(&clp->cl_count, 1);
atomic_set(&clp->cl_callback.cb_set, 0);
clp->cl_callback.cb_parsed = 0;
INIT_LIST_HEAD(&clp->cl_idhash);
INIT_LIST_HEAD(&clp->cl_strhash);
INIT_LIST_HEAD(&clp->cl_openowners);
Expand Down Expand Up @@ -620,14 +619,12 @@ gen_callback(struct nfs4_client *clp, struct nfsd4_setclientid *se)
goto out_err;
cb->cb_prog = se->se_callback_prog;
cb->cb_ident = se->se_callback_ident;
cb->cb_parsed = 1;
return;
out_err:
printk(KERN_INFO "NFSD: this client (clientid %08x/%08x) "
"will not receive delegations\n",
clp->cl_clientid.cl_boot, clp->cl_clientid.cl_id);

cb->cb_parsed = 0;
return;
}

Expand Down Expand Up @@ -872,7 +869,7 @@ nfsd4_setclientid_confirm(struct svc_rqst *rqstp, struct nfsd4_setclientid_confi
else {
/* XXX: We just turn off callbacks until we can handle
* change request correctly. */
conf->cl_callback.cb_parsed = 0;
atomic_set(&conf->cl_callback.cb_set, 0);
gen_confirm(conf);
expire_client(unconf);
status = nfs_ok;
Expand Down
1 change: 0 additions & 1 deletion include/linux/nfsd/state.h
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,6 @@ struct nfs4_delegation {
/* client delegation callback info */
struct nfs4_callback {
/* SETCLIENTID info */
u32 cb_parsed; /* addr parsed */
u32 cb_addr;
unsigned short cb_port;
u32 cb_prog;
Expand Down

0 comments on commit cb36d63

Please sign in to comment.