Home | History | Annotate | Download | only in dmover

Lines Matching defs:dreq

103 	struct dmover_request *dreq;
111 dreq = TAILQ_FIRST(&dmb->dmb_pendreqs);
112 if (dreq == NULL) {
118 dmover_backend_remque(dmb, dreq);
119 dreq->dreq_flags |= DMOVER_REQ_RUNNING;
124 sdf = dreq->dreq_assignment->das_algdesc->dad_data;
125 (*sdf->sdf_process)(dreq);
138 swdmover_func_zero_process(struct dmover_request *dreq)
141 switch (dreq->dreq_outbuf_type) {
143 memset(dreq->dreq_outbuf.dmbuf_linear.l_addr, 0,
144 dreq->dreq_outbuf.dmbuf_linear.l_len);
149 struct uio *uio = dreq->dreq_outbuf.dmbuf_uio;
156 dreq->dreq_error = EINVAL;
157 dreq->dreq_flags |= DMOVER_REQ_ERROR;
173 dreq->dreq_error = error;
174 dreq->dreq_flags |= DMOVER_REQ_ERROR;
184 dreq->dreq_error = EINVAL;
185 dreq->dreq_flags |= DMOVER_REQ_ERROR;
189 dmover_done(dreq);
198 swdmover_func_fill8_process(struct dmover_request *dreq)
201 switch (dreq->dreq_outbuf_type) {
203 memset(dreq->dreq_outbuf.dmbuf_linear.l_addr,
204 dreq->dreq_immediate[0],
205 dreq->dreq_outbuf.dmbuf_linear.l_len);
210 struct uio *uio = dreq->dreq_outbuf.dmbuf_uio;
217 dreq->dreq_error = EINVAL;
218 dreq->dreq_flags |= DMOVER_REQ_ERROR;
226 memset(cp, dreq->dreq_immediate[0], buflen);
234 dreq->dreq_error = error;
235 dreq->dreq_flags |= DMOVER_REQ_ERROR;
245 dreq->dreq_error = EINVAL;
246 dreq->dreq_flags |= DMOVER_REQ_ERROR;
250 dmover_done(dreq);
267 swdmover_func_xor_process(struct dmover_request *dreq)
269 #define INBUF_L(x) dreq->dreq_inbuf[(x)].dmbuf_linear
270 #define OUTBUF_L dreq->dreq_outbuf.dmbuf_linear
274 int i, ninputs = dreq->dreq_assignment->das_algdesc->dad_ninputs;
278 if (dreq->dreq_inbuf_type != dreq->dreq_outbuf_type) {
280 dreq->dreq_error = EINVAL;
281 dreq->dreq_flags |= DMOVER_REQ_ERROR;
286 switch (dreq->dreq_outbuf_type) {
295 dreq->dreq_error = EINVAL;
296 dreq->dreq_flags |= DMOVER_REQ_ERROR;
332 struct uio *uio_out = dreq->dreq_outbuf.dmbuf_uio;
333 struct uio *uio_in = dreq->dreq_inbuf[0].dmbuf_uio;
343 dreq->dreq_error = EINVAL;
344 dreq->dreq_flags |= DMOVER_REQ_ERROR;
366 dreq->dreq_error = error;
367 dreq->dreq_flags |= DMOVER_REQ_ERROR;
372 uio = dreq->dreq_inbuf[i].dmbuf_uio;
382 dreq->dreq_error = error;
383 dreq->dreq_flags |= DMOVER_REQ_ERROR;
393 dreq->dreq_error = EINVAL;
394 dreq->dreq_flags |= DMOVER_REQ_ERROR;
399 dmover_done(dreq);
408 swdmover_func_copy_process(struct dmover_request *dreq)
412 if (dreq->dreq_inbuf_type != dreq->dreq_outbuf_type) {
414 dreq->dreq_error = EINVAL;
415 dreq->dreq_flags |= DMOVER_REQ_ERROR;
420 switch (dreq->dreq_outbuf_type) {
422 if (dreq->dreq_outbuf.dmbuf_linear.l_len !=
423 dreq->dreq_inbuf[0].dmbuf_linear.l_len) {
425 dreq->dreq_error = EINVAL;
426 dreq->dreq_flags |= DMOVER_REQ_ERROR;
430 memcpy(dreq->dreq_outbuf.dmbuf_linear.l_addr,
431 dreq->dreq_inbuf[0].dmbuf_linear.l_addr,
432 dreq->dreq_outbuf.dmbuf_linear.l_len);
437 struct uio *uio_out = dreq->dreq_outbuf.dmbuf_uio;
438 struct uio *uio_in = dreq->dreq_inbuf[0].dmbuf_uio;
447 dreq->dreq_error = EINVAL;
448 dreq->dreq_flags |= DMOVER_REQ_ERROR;
465 dreq->dreq_error = error;
466 dreq->dreq_flags |= DMOVER_REQ_ERROR;
476 dreq->dreq_error = EINVAL;
477 dreq->dreq_flags |= DMOVER_REQ_ERROR;
482 dmover_done(dreq);
569 swdmover_func_iscsi_crc32c_process(struct dmover_request *dreq)
574 if (dreq->dreq_outbuf_type != DMOVER_BUF_NONE) {
576 dreq->dreq_error = EINVAL;
577 dreq->dreq_flags |= DMOVER_REQ_ERROR;
582 memcpy(&result, dreq->dreq_immediate, sizeof(result));
584 switch (dreq->dreq_inbuf_type) {
586 result = iscsi_crc32c(dreq->dreq_inbuf[0].dmbuf_linear.l_addr,
587 dreq->dreq_inbuf[0].dmbuf_linear.l_len, result);
592 struct uio *uio_in = dreq->dreq_inbuf[0].dmbuf_uio;
599 dreq->dreq_error = EINVAL;
600 dreq->dreq_flags |= DMOVER_REQ_ERROR;
615 dreq->dreq_error = error;
616 dreq->dreq_flags |= DMOVER_REQ_ERROR;
627 dreq->dreq_error = EINVAL;
628 dreq->dreq_flags |= DMOVER_REQ_ERROR;
633 memcpy(dreq->dreq_immediate, &result, sizeof(result));
635 dmover_done(dreq);