[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:
Родитель
3e9e3dbe0f
Коммит
cb36d63457
|
@ -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 */
|
||||
|
|
|
@ -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);
|
||||
|
@ -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;
|
||||
}
|
||||
|
||||
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
|
|
Загрузка…
Ссылка в новой задаче