diff options
author | Benny Halevy <bhalevy@panasas.com> | 2011-05-22 12:52:03 -0400 |
---|---|---|
committer | Boaz Harrosh <bharrosh@panasas.com> | 2011-05-29 13:53:51 -0400 |
commit | d20581aa4be11407c9eeeb75992df5ef176bba0f (patch) | |
tree | 277fdff5bc6ad5a5df105abd092c7179d22554fb /include | |
parent | e51b841dd0be9ff53f740c44c32c32679edcb7c8 (diff) |
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.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/nfs_xdr.h b/include/linux/nfs_xdr.h index 7e371f7df9c4..7c8ff0984a84 100644 --- a/include/linux/nfs_xdr.h +++ b/include/linux/nfs_xdr.h | |||
@@ -1087,6 +1087,7 @@ struct nfs_read_data { | |||
1087 | const struct rpc_call_ops *mds_ops; | 1087 | const struct rpc_call_ops *mds_ops; |
1088 | int (*read_done_cb) (struct rpc_task *task, struct nfs_read_data *data); | 1088 | int (*read_done_cb) (struct rpc_task *task, struct nfs_read_data *data); |
1089 | __u64 mds_offset; | 1089 | __u64 mds_offset; |
1090 | int pnfs_error; | ||
1090 | struct page *page_array[NFS_PAGEVEC_SIZE]; | 1091 | struct page *page_array[NFS_PAGEVEC_SIZE]; |
1091 | }; | 1092 | }; |
1092 | 1093 | ||
@@ -1112,6 +1113,7 @@ struct nfs_write_data { | |||
1112 | unsigned long timestamp; /* For lease renewal */ | 1113 | unsigned long timestamp; /* For lease renewal */ |
1113 | #endif | 1114 | #endif |
1114 | __u64 mds_offset; /* Filelayout dense stripe */ | 1115 | __u64 mds_offset; /* Filelayout dense stripe */ |
1116 | int pnfs_error; | ||
1115 | struct page *page_array[NFS_PAGEVEC_SIZE]; | 1117 | struct page *page_array[NFS_PAGEVEC_SIZE]; |
1116 | }; | 1118 | }; |
1117 | 1119 | ||