summaryrefslogtreecommitdiff
path: root/include/linux/nfsd
diff options
context:
space:
mode:
authorJ. Bruce Fields <bfields@citi.umich.edu>2009-05-01 19:50:00 -0400
committerJ. Bruce Fields <bfields@citi.umich.edu>2009-05-01 19:50:00 -0400
commitb53d40c5070bffde1b2bcaf848412a50d8894794 (patch)
tree3f0e0f62997b437eb03678040393aa5e1fbfd315 /include/linux/nfsd
parentc237dc0303bcf6f4cc2e0efe4fe4e341c6f34dac (diff)
nfsd4: eliminate struct nfs4_cb_recall
The nfs4_cb_recall struct is used only in nfs4_delegation, so its pointer to the containing delegation is unnecessary--we could just use container_of(). But there's no real reason to have this a separate struct at all--just move these fields to nfs4_delegation. Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Diffstat (limited to 'include/linux/nfsd')
-rw-r--r--include/linux/nfsd/state.h18
1 files changed, 5 insertions, 13 deletions
diff --git a/include/linux/nfsd/state.h b/include/linux/nfsd/state.h
index 563c367a301..233b60d39b8 100644
--- a/include/linux/nfsd/state.h
+++ b/include/linux/nfsd/state.h
@@ -61,15 +61,6 @@ typedef struct {
#define si_stateownerid si_opaque.so_stateownerid
#define si_fileid si_opaque.so_fileid
-
-struct nfs4_cb_recall {
- u32 cbr_ident;
- int cbr_trunc;
- stateid_t cbr_stateid;
- struct knfsd_fh cbr_fh;
- struct nfs4_delegation *cbr_dp;
-};
-
struct nfs4_delegation {
struct list_head dl_perfile;
struct list_head dl_perclnt;
@@ -81,12 +72,13 @@ struct nfs4_delegation {
struct file *dl_vfs_file;
u32 dl_type;
time_t dl_time;
- struct nfs4_cb_recall dl_recall;
+/* For recall: */
+ u32 dl_ident;
+ int dl_trunc;
+ stateid_t dl_stateid;
+ struct knfsd_fh dl_fh;
};
-#define dl_stateid dl_recall.cbr_stateid
-#define dl_fh dl_recall.cbr_fh
-
/* client delegation callback info */
struct nfs4_cb_conn {
/* SETCLIENTID info */