summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorBenny Halevy <bhalevy@panasas.com>2011-05-22 19:52:03 +0300
committerBoaz Harrosh <bharrosh@panasas.com>2011-05-29 20:53:51 +0300
commitd20581aa4be11407c9eeeb75992df5ef176bba0f (patch)
tree277fdff5bc6ad5a5df105abd092c7179d22554fb /include
parente51b841dd0be9ff53f740c44c32c32679edcb7c8 (diff)
downloadop-kernel-dev-d20581aa4be11407c9eeeb75992df5ef176bba0f.zip
op-kernel-dev-d20581aa4be11407c9eeeb75992df5ef176bba0f.tar.gz
pnfs: support for non-rpc layout drivers
Non-rpc layout driver such as for objects and blocks implement their own I/O path and error handling logic. Therefore bypass NFS-based error handling for these layout drivers. [fix lseg ref-count bugs, and null de-refs] [Fall out from: non-rpc layout drivers] Signed-off-by: Boaz Harrosh <bharrosh@panasas.com> [get rid of PNFS_USE_RPC_CODE] [get rid of __nfs4_write_done_cb] [revert useless change in nfs4_write_done_cb] Signed-off-by: Benny Halevy <bhalevy@panasas.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/nfs_xdr.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/nfs_xdr.h b/include/linux/nfs_xdr.h
index 7e371f7..7c8ff09 100644
--- a/include/linux/nfs_xdr.h
+++ b/include/linux/nfs_xdr.h
@@ -1087,6 +1087,7 @@ struct nfs_read_data {
const struct rpc_call_ops *mds_ops;
int (*read_done_cb) (struct rpc_task *task, struct nfs_read_data *data);
__u64 mds_offset;
+ int pnfs_error;
struct page *page_array[NFS_PAGEVEC_SIZE];
};
@@ -1112,6 +1113,7 @@ struct nfs_write_data {
unsigned long timestamp; /* For lease renewal */
#endif
__u64 mds_offset; /* Filelayout dense stripe */
+ int pnfs_error;
struct page *page_array[NFS_PAGEVEC_SIZE];
};
OpenPOWER on IntegriCloud