@@ -951,9 +951,9 @@ static int svc_rdma_read_data_item(struct svcxprt_rdma *rdma,
951951}
952952
953953/**
954- * svc_rdma_read_chunk_range - Build RDMA Read WQEs for portion of a chunk
955- * @rdma: controlling transport
956- * @info : context for RDMA Reads
954+ * svc_rdma_read_chunk_range - Build RDMA Read WRs for portion of a chunk
955+ * @rqstp: RPC transaction context
956+ * @head : context for ongoing I/O
957957 * @chunk: parsed Call chunk to pull
958958 * @offset: offset of region to pull
959959 * @length: length of region to pull
@@ -965,12 +965,11 @@ static int svc_rdma_read_data_item(struct svcxprt_rdma *rdma,
965965 * %-ENOTCONN: posting failed (connection is lost),
966966 * %-EIO: rdma_rw initialization failed (DMA mapping, etc).
967967 */
968- static int svc_rdma_read_chunk_range (struct svcxprt_rdma * rdma ,
969- struct svc_rdma_read_info * info ,
968+ static int svc_rdma_read_chunk_range (struct svc_rqst * rqstp ,
969+ struct svc_rdma_recv_ctxt * head ,
970970 const struct svc_rdma_chunk * chunk ,
971971 unsigned int offset , unsigned int length )
972972{
973- struct svc_rdma_recv_ctxt * head = info -> ri_readctxt ;
974973 const struct svc_rdma_segment * segment ;
975974 int ret ;
976975
@@ -987,8 +986,7 @@ static int svc_rdma_read_chunk_range(struct svcxprt_rdma *rdma,
987986 dummy .rs_length = min_t (u32 , length , segment -> rs_length ) - offset ;
988987 dummy .rs_offset = segment -> rs_offset + offset ;
989988
990- ret = svc_rdma_build_read_segment (info -> ri_rqst ,
991- info -> ri_readctxt , & dummy );
989+ ret = svc_rdma_build_read_segment (rqstp , head , & dummy );
992990 if (ret < 0 )
993991 break ;
994992
@@ -1029,7 +1027,8 @@ static int svc_rdma_read_call_chunk(struct svcxprt_rdma *rdma,
10291027 start = 0 ;
10301028 chunk = pcl_first_chunk (pcl );
10311029 length = chunk -> ch_position ;
1032- ret = svc_rdma_read_chunk_range (rdma , info , call_chunk , start , length );
1030+ ret = svc_rdma_read_chunk_range (info -> ri_rqst , head , call_chunk ,
1031+ start , length );
10331032 if (ret < 0 )
10341033 return ret ;
10351034
@@ -1044,15 +1043,16 @@ static int svc_rdma_read_call_chunk(struct svcxprt_rdma *rdma,
10441043
10451044 start += length ;
10461045 length = next -> ch_position - head -> rc_readbytes ;
1047- ret = svc_rdma_read_chunk_range (rdma , info , call_chunk ,
1048- start , length );
1046+ ret = svc_rdma_read_chunk_range (info -> ri_rqst , head ,
1047+ call_chunk , start , length );
10491048 if (ret < 0 )
10501049 return ret ;
10511050 }
10521051
10531052 start += length ;
10541053 length = call_chunk -> ch_length - start ;
1055- return svc_rdma_read_chunk_range (rdma , info , call_chunk , start , length );
1054+ return svc_rdma_read_chunk_range (info -> ri_rqst , head , call_chunk ,
1055+ start , length );
10561056}
10571057
10581058/**
0 commit comments