summaryrefslogtreecommitdiff
path: root/fs/nfsd/state.h
diff options
context:
space:
mode:
authorJ. Bruce Fields <bfields@citi.umich.edu>2010-02-18 08:27:24 -0800
committerJ. Bruce Fields <bfields@citi.umich.edu>2010-04-02 16:28:11 -0400
commit227f98d98d2ed7929f41426adc21f57b927354a6 (patch)
tree8186b54a4f4e0cb5b3a7778f76854b00c7ce43db /fs/nfsd/state.h
parent788e69e548cc8d127b90f0de1f7b7e983d1d587a (diff)
downloadlinux-3.10-227f98d98d2ed7929f41426adc21f57b927354a6.tar.gz
linux-3.10-227f98d98d2ed7929f41426adc21f57b927354a6.tar.bz2
linux-3.10-227f98d98d2ed7929f41426adc21f57b927354a6.zip
nfsd4: preallocate nfs4_rpc_args
Instead of allocating this small structure, just include it in the delegation. The nfsd4_callback structure isn't really necessary yet, but we plan to add to it all the information necessary to perform a callback. Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Diffstat (limited to 'fs/nfsd/state.h')
-rw-r--r--fs/nfsd/state.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/fs/nfsd/state.h b/fs/nfsd/state.h
index fefeae27f25..b85437982a8 100644
--- a/fs/nfsd/state.h
+++ b/fs/nfsd/state.h
@@ -70,6 +70,15 @@ struct nfsd4_cb_sequence {
struct nfs4_client *cbs_clp;
};
+struct nfs4_rpc_args {
+ void *args_op;
+ struct nfsd4_cb_sequence args_seq;
+};
+
+struct nfsd4_callback {
+ struct nfs4_rpc_args cb_args;
+};
+
struct nfs4_delegation {
struct list_head dl_perfile;
struct list_head dl_perclnt;
@@ -86,6 +95,7 @@ struct nfs4_delegation {
stateid_t dl_stateid;
struct knfsd_fh dl_fh;
int dl_retries;
+ struct nfsd4_callback dl_recall;
};
/* client delegation callback info */