Commit cb36d634 authored by NeilBrown's avatar NeilBrown Committed by Linus Torvalds

[PATCH] knfsd: nfsd4: remove cb_parsed

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: default avatarJ. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: default avatarNeil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 3e9e3dbe
...@@ -386,9 +386,7 @@ nfsd4_probe_callback(struct nfs4_client *clp) ...@@ -386,9 +386,7 @@ nfsd4_probe_callback(struct nfs4_client *clp)
char hostname[32]; char hostname[32];
int status; int status;
dprintk("NFSD: probe_callback. cb_parsed %d cb_set %d\n", if (atomic_read(&cb->cb_set))
cb->cb_parsed, atomic_read(&cb->cb_set));
if (!cb->cb_parsed || atomic_read(&cb->cb_set))
return; return;
/* Initialize address */ /* Initialize address */
......
...@@ -377,7 +377,6 @@ create_client(struct xdr_netobj name, char *recdir) { ...@@ -377,7 +377,6 @@ create_client(struct xdr_netobj name, char *recdir) {
memcpy(clp->cl_recdir, recdir, HEXDIR_LEN); memcpy(clp->cl_recdir, recdir, HEXDIR_LEN);
atomic_set(&clp->cl_count, 1); atomic_set(&clp->cl_count, 1);
atomic_set(&clp->cl_callback.cb_set, 0); 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_idhash);
INIT_LIST_HEAD(&clp->cl_strhash); INIT_LIST_HEAD(&clp->cl_strhash);
INIT_LIST_HEAD(&clp->cl_openowners); INIT_LIST_HEAD(&clp->cl_openowners);
...@@ -620,14 +619,12 @@ gen_callback(struct nfs4_client *clp, struct nfsd4_setclientid *se) ...@@ -620,14 +619,12 @@ gen_callback(struct nfs4_client *clp, struct nfsd4_setclientid *se)
goto out_err; goto out_err;
cb->cb_prog = se->se_callback_prog; cb->cb_prog = se->se_callback_prog;
cb->cb_ident = se->se_callback_ident; cb->cb_ident = se->se_callback_ident;
cb->cb_parsed = 1;
return; return;
out_err: out_err:
printk(KERN_INFO "NFSD: this client (clientid %08x/%08x) " printk(KERN_INFO "NFSD: this client (clientid %08x/%08x) "
"will not receive delegations\n", "will not receive delegations\n",
clp->cl_clientid.cl_boot, clp->cl_clientid.cl_id); clp->cl_clientid.cl_boot, clp->cl_clientid.cl_id);
cb->cb_parsed = 0;
return; return;
} }
...@@ -872,7 +869,7 @@ nfsd4_setclientid_confirm(struct svc_rqst *rqstp, struct nfsd4_setclientid_confi ...@@ -872,7 +869,7 @@ nfsd4_setclientid_confirm(struct svc_rqst *rqstp, struct nfsd4_setclientid_confi
else { else {
/* XXX: We just turn off callbacks until we can handle /* XXX: We just turn off callbacks until we can handle
* change request correctly. */ * change request correctly. */
conf->cl_callback.cb_parsed = 0; atomic_set(&conf->cl_callback.cb_set, 0);
gen_confirm(conf); gen_confirm(conf);
expire_client(unconf); expire_client(unconf);
status = nfs_ok; status = nfs_ok;
......
...@@ -92,7 +92,6 @@ struct nfs4_delegation { ...@@ -92,7 +92,6 @@ struct nfs4_delegation {
/* client delegation callback info */ /* client delegation callback info */
struct nfs4_callback { struct nfs4_callback {
/* SETCLIENTID info */ /* SETCLIENTID info */
u32 cb_parsed; /* addr parsed */
u32 cb_addr; u32 cb_addr;
unsigned short cb_port; unsigned short cb_port;
u32 cb_prog; u32 cb_prog;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment