[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: 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>
This commit is contained in:
committed by
Linus Torvalds
parent
3e9e3dbe0f
commit
cb36d63457
@@ -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) {
|
|||||||
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)
|
|||||||
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
|
|||||||
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 {
|
|||||||
/* 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;
|
||||||
|
Reference in New Issue
Block a user