Lines Matching refs:q_req
135 zfcp_qdio_sbal_chain(struct zfcp_qdio *qdio, struct zfcp_qdio_req *q_req)
140 sbale = zfcp_qdio_sbale_curr(qdio, q_req);
144 if (q_req->sbal_last == q_req->sbal_limit)
148 sbale = zfcp_qdio_sbale_req(qdio, q_req);
152 q_req->sbal_last++;
153 q_req->sbal_last %= QDIO_MAX_BUFFERS_PER_Q;
156 q_req->sbal_number++;
157 BUG_ON(q_req->sbal_number > ZFCP_QDIO_MAX_SBALS_PER_REQ);
160 q_req->sbale_curr = 0;
163 sbale = zfcp_qdio_sbale_curr(qdio, q_req);
164 sbale->sflags |= q_req->sbtype;
170 zfcp_qdio_sbale_next(struct zfcp_qdio *qdio, struct zfcp_qdio_req *q_req)
172 if (q_req->sbale_curr == qdio->max_sbale_per_sbal - 1)
173 return zfcp_qdio_sbal_chain(qdio, q_req);
174 q_req->sbale_curr++;
175 return zfcp_qdio_sbale_curr(qdio, q_req);
181 * @q_req: pointer to struct zfcp_qdio_req
185 int zfcp_qdio_sbals_from_sg(struct zfcp_qdio *qdio, struct zfcp_qdio_req *q_req,
191 sbale = zfcp_qdio_sbale_req(qdio, q_req);
192 sbale->sflags |= q_req->sbtype;
195 sbale = zfcp_qdio_sbale_next(qdio, q_req);
198 zfcp_qdio_zero_sbals(qdio->req_q, q_req->sbal_first,
199 q_req->sbal_number);
251 * @q_req: pointer to struct zfcp_qdio_req
254 int zfcp_qdio_send(struct zfcp_qdio *qdio, struct zfcp_qdio_req *q_req)
257 u8 sbal_number = q_req->sbal_number;
266 q_req->sbal_first, sbal_number);
271 zfcp_qdio_zero_sbals(qdio->req_q, q_req->sbal_first,