diff options
Diffstat (limited to 'include/linux/sunrpc/svc_rdma.h')
-rw-r--r-- | include/linux/sunrpc/svc_rdma.h | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/include/linux/sunrpc/svc_rdma.h b/include/linux/sunrpc/svc_rdma.h index ddfe88f52219..df8edf8ec914 100644 --- a/include/linux/sunrpc/svc_rdma.h +++ b/include/linux/sunrpc/svc_rdma.h | |||
@@ -77,6 +77,7 @@ struct svc_rdma_op_ctxt { | |||
77 | enum ib_wr_opcode wr_op; | 77 | enum ib_wr_opcode wr_op; |
78 | enum ib_wc_status wc_status; | 78 | enum ib_wc_status wc_status; |
79 | u32 byte_len; | 79 | u32 byte_len; |
80 | u32 position; | ||
80 | struct svcxprt_rdma *xprt; | 81 | struct svcxprt_rdma *xprt; |
81 | unsigned long flags; | 82 | unsigned long flags; |
82 | enum dma_data_direction direction; | 83 | enum dma_data_direction direction; |
@@ -148,6 +149,10 @@ struct svcxprt_rdma { | |||
148 | struct ib_cq *sc_rq_cq; | 149 | struct ib_cq *sc_rq_cq; |
149 | struct ib_cq *sc_sq_cq; | 150 | struct ib_cq *sc_sq_cq; |
150 | struct ib_mr *sc_phys_mr; /* MR for server memory */ | 151 | struct ib_mr *sc_phys_mr; /* MR for server memory */ |
152 | int (*sc_reader)(struct svcxprt_rdma *, | ||
153 | struct svc_rqst *, | ||
154 | struct svc_rdma_op_ctxt *, | ||
155 | int *, u32 *, u32, u32, u64, bool); | ||
151 | u32 sc_dev_caps; /* distilled device caps */ | 156 | u32 sc_dev_caps; /* distilled device caps */ |
152 | u32 sc_dma_lkey; /* local dma key */ | 157 | u32 sc_dma_lkey; /* local dma key */ |
153 | unsigned int sc_frmr_pg_list_len; | 158 | unsigned int sc_frmr_pg_list_len; |
@@ -176,8 +181,6 @@ struct svcxprt_rdma { | |||
176 | #define RPCRDMA_MAX_REQ_SIZE 4096 | 181 | #define RPCRDMA_MAX_REQ_SIZE 4096 |
177 | 182 | ||
178 | /* svc_rdma_marshal.c */ | 183 | /* svc_rdma_marshal.c */ |
179 | extern void svc_rdma_rcl_chunk_counts(struct rpcrdma_read_chunk *, | ||
180 | int *, int *); | ||
181 | extern int svc_rdma_xdr_decode_req(struct rpcrdma_msg **, struct svc_rqst *); | 184 | extern int svc_rdma_xdr_decode_req(struct rpcrdma_msg **, struct svc_rqst *); |
182 | extern int svc_rdma_xdr_decode_deferred_req(struct svc_rqst *); | 185 | extern int svc_rdma_xdr_decode_deferred_req(struct svc_rqst *); |
183 | extern int svc_rdma_xdr_encode_error(struct svcxprt_rdma *, | 186 | extern int svc_rdma_xdr_encode_error(struct svcxprt_rdma *, |
@@ -195,6 +198,12 @@ extern int svc_rdma_xdr_get_reply_hdr_len(struct rpcrdma_msg *); | |||
195 | 198 | ||
196 | /* svc_rdma_recvfrom.c */ | 199 | /* svc_rdma_recvfrom.c */ |
197 | extern int svc_rdma_recvfrom(struct svc_rqst *); | 200 | extern int svc_rdma_recvfrom(struct svc_rqst *); |
201 | extern int rdma_read_chunk_lcl(struct svcxprt_rdma *, struct svc_rqst *, | ||
202 | struct svc_rdma_op_ctxt *, int *, u32 *, | ||
203 | u32, u32, u64, bool); | ||
204 | extern int rdma_read_chunk_frmr(struct svcxprt_rdma *, struct svc_rqst *, | ||
205 | struct svc_rdma_op_ctxt *, int *, u32 *, | ||
206 | u32, u32, u64, bool); | ||
198 | 207 | ||
199 | /* svc_rdma_sendto.c */ | 208 | /* svc_rdma_sendto.c */ |
200 | extern int svc_rdma_sendto(struct svc_rqst *); | 209 | extern int svc_rdma_sendto(struct svc_rqst *); |