aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorFred Isaman <iisaman@netapp.com>2012-04-20 14:47:54 -0400
committerTrond Myklebust <Trond.Myklebust@netapp.com>2012-04-27 14:10:38 -0400
commitf453a54a01c7c0453ad9550906e3d2663dd486ac (patch)
tree1eac38e7e186ea0339066e7da417a20e0274b2c0 /include
parentea2cf2282b4278461266013e9c002ee1c66700ff (diff)
NFS: create nfs_commit_completion_ops
Factors out the code that needs to change when directio starts using these code paths. Signed-off-by: Fred Isaman <iisaman@netapp.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/nfs_xdr.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/include/linux/nfs_xdr.h b/include/linux/nfs_xdr.h
index 224e1e82670c..0e8b88ad9ae2 100644
--- a/include/linux/nfs_xdr.h
+++ b/include/linux/nfs_xdr.h
@@ -1263,10 +1263,18 @@ struct nfs_mds_commit_info {
1263 struct list_head list; 1263 struct list_head list;
1264}; 1264};
1265 1265
1266struct nfs_commit_data;
1267struct nfs_inode;
1268struct nfs_commit_completion_ops {
1269 void (*error_cleanup) (struct nfs_inode *nfsi);
1270 void (*completion) (struct nfs_commit_data *data);
1271};
1272
1266struct nfs_commit_info { 1273struct nfs_commit_info {
1267 spinlock_t *lock; 1274 spinlock_t *lock;
1268 struct nfs_mds_commit_info *mds; 1275 struct nfs_mds_commit_info *mds;
1269 struct pnfs_ds_commit_info *ds; 1276 struct pnfs_ds_commit_info *ds;
1277 const struct nfs_commit_completion_ops *completion_ops;
1270}; 1278};
1271 1279
1272struct nfs_commit_data { 1280struct nfs_commit_data {
@@ -1285,6 +1293,7 @@ struct nfs_commit_data {
1285 struct nfs_client *ds_clp; /* pNFS data server */ 1293 struct nfs_client *ds_clp; /* pNFS data server */
1286 int ds_commit_index; 1294 int ds_commit_index;
1287 const struct rpc_call_ops *mds_ops; 1295 const struct rpc_call_ops *mds_ops;
1296 const struct nfs_commit_completion_ops *completion_ops;
1288 int (*commit_done_cb) (struct rpc_task *task, struct nfs_commit_data *data); 1297 int (*commit_done_cb) (struct rpc_task *task, struct nfs_commit_data *data);
1289}; 1298};
1290 1299