Lines Matching defs:aio_req
291 pqisrc_show_aio_req(pqisrc_softstate_t *softs, pqi_aio_req_t *aio_req)
293 DBG_IO("%30s: 0x%x\n", "aio_req->header.iu_type",
294 aio_req->header.iu_type);
295 DBG_IO("%30s: 0x%x\n", "aio_req->resp_qid",
296 aio_req->response_queue_id);
297 DBG_IO("%30s: 0x%x\n", "aio_req->req_id",
298 aio_req->req_id);
299 DBG_IO("%30s: 0x%x\n", "aio_req->nexus",
300 aio_req->nexus);
301 DBG_IO("%30s: 0x%x\n", "aio_req->buf_len",
302 aio_req->buf_len);
303 DBG_IO("%30s: 0x%x\n", "aio_req->cmd_flags.data_dir",
304 aio_req->cmd_flags.data_dir);
305 DBG_IO("%30s: 0x%x\n", "aio_req->attr_prio.task_attr",
306 aio_req->attr_prio.task_attr);
307 DBG_IO("%30s: 0x%x\n", "aio_req->err_idx",
308 aio_req->err_idx);
309 DBG_IO("%30s: 0x%x\n", "aio_req->num_sg",
310 aio_req->num_sg);
311 DBG_IO("%30s: 0x%p\n", "aio_req->sg_desc[0].addr",
312 (void *)aio_req->sg_desc[0].addr);
313 DBG_IO("%30s: 0x%x\n", "aio_req->sg_desc[0].len",
314 aio_req->sg_desc[0].len);
315 DBG_IO("%30s: 0x%x\n", "aio_req->sg_desc[0].flags",
316 aio_req->sg_desc[0].flags);
336 pqisrc_build_aio_common(pqisrc_softstate_t *softs, pqi_aio_req_t *aio_req,
340 aio_req->header.iu_type = PQI_IU_TYPE_AIO_PATH_IO_REQUEST;
341 aio_req->header.comp_feature = 0;
342 aio_req->response_queue_id = OS_GET_IO_RESP_QID(softs, rcb);
343 aio_req->work_area[0] = 0;
344 aio_req->work_area[1] = 0;
345 aio_req->req_id = rcb->tag;
346 aio_req->res1[0] = 0;
347 aio_req->res1[1] = 0;
348 aio_req->nexus = rcb->ioaccel_handle;
349 aio_req->buf_len = GET_SCSI_BUFFLEN(rcb);
350 aio_req->cmd_flags.data_dir = rcb->data_dir;
351 aio_req->cmd_flags.mem_type = 0;
352 aio_req->cmd_flags.fence = 0;
353 aio_req->cmd_flags.res2 = 0;
354 aio_req->attr_prio.task_attr = OS_GET_TASK_ATTR(rcb);
355 aio_req->attr_prio.cmd_prio = 0;
356 aio_req->attr_prio.res3 = 0;
357 aio_req->err_idx = aio_req->req_id;
358 aio_req->cdb_len = rcb->cmdlen;
360 if (rcb->cmdlen > sizeof(aio_req->cdb))
361 rcb->cmdlen = sizeof(aio_req->cdb);
362 memcpy(aio_req->cdb, rcb->cdbp, rcb->cmdlen);
363 memset(aio_req->res4, 0, sizeof(aio_req->res4));
367 int_to_scsilun(lun, aio_req->lun);
370 memset(aio_req->lun, 0, sizeof(aio_req->lun));
375 aio_req->cmd_flags.encrypt_enable = true;
376 aio_req->encrypt_key_index =
378 aio_req->encrypt_twk_low =
380 aio_req->encrypt_twk_high =
383 aio_req->cmd_flags.encrypt_enable = 0;
384 aio_req->encrypt_key_index = 0;
385 aio_req->encrypt_twk_high = 0;
386 aio_req->encrypt_twk_low = 0;
389 aio_req->cmd_flags.partial = pqisrc_build_sgl(&aio_req->sg_desc[0], rcb,
390 &aio_req->header, num_elem_alloted);
392 aio_req->num_sg = aio_req->header.iu_length / sizeof(sgt_t);
394 /* DBG_INFO("aio_req->num_sg :%d\n", aio_req->num_sg); */
396 aio_req->header.iu_length += offsetof(pqi_aio_req_t, sg_desc) -
401 rcb->resp_qid = aio_req->response_queue_id;
408 pqi_aio_req_t *aio_req)
412 DBG_INFO("%15s: 0x%x\n", "iu_type", aio_req->header.iu_type);
413 DBG_INFO("%15s: 0x%x\n", "comp_feat", aio_req->header.comp_feature);
414 DBG_INFO("%15s: 0x%x\n", "length", aio_req->header.iu_length);
415 DBG_INFO("%15s: 0x%x\n", "resp_qid", aio_req->response_queue_id);
416 DBG_INFO("%15s: 0x%x\n", "req_id", aio_req->req_id);
417 DBG_INFO("%15s: 0x%x\n", "nexus", aio_req->nexus);
418 DBG_INFO("%15s: 0x%x\n", "buf_len", aio_req->buf_len);
420 DBG_INFO("%15s: 0x%x\n", "data_dir", aio_req->cmd_flags.data_dir);
421 DBG_INFO("%15s: 0x%x\n", "partial", aio_req->cmd_flags.partial);
422 DBG_INFO("%15s: 0x%x\n", "mem_type", aio_req->cmd_flags.mem_type);
423 DBG_INFO("%15s: 0x%x\n", "fence", aio_req->cmd_flags.fence);
425 aio_req->cmd_flags.encrypt_enable);
427 DBG_INFO("%15s: 0x%x\n", "task_attr", aio_req->attr_prio.task_attr);
428 DBG_INFO("%15s: 0x%x\n", "cmd_prio", aio_req->attr_prio.cmd_prio);
429 DBG_INFO("%15s: 0x%x\n", "dek_index", aio_req->encrypt_key_index);
430 DBG_INFO("%15s: 0x%x\n", "tweak_lower", aio_req->encrypt_twk_low);
431 DBG_INFO("%15s: 0x%x\n", "tweak_upper", aio_req->encrypt_twk_high);
432 pqisrc_show_cdb(softs, "AIOC", rcb, aio_req->cdb);
433 DBG_INFO("%15s: 0x%x\n", "err_idx", aio_req->err_idx);
434 DBG_INFO("%15s: 0x%x\n", "num_sg", aio_req->num_sg);
435 DBG_INFO("%15s: 0x%x\n", "cdb_len", aio_req->cdb_len);
437 DBG_INFO("%15s: 0x%x\n", "lun", aio_req->lun);
439 (void *)aio_req->sg_desc[0].addr);
441 aio_req->sg_desc[0].len);
443 aio_req->sg_desc[0].flags);
451 pqi_aio_raid1_write_req_t *aio_req, rcb_t *rcb,
464 aio_req->header.iu_type = PQI_IU_TYPE_RAID1_WRITE_BYPASS_REQUEST;
465 aio_req->header.comp_feature = 0;
466 aio_req->response_queue_id = OS_GET_IO_RESP_QID(softs, rcb);
467 aio_req->work_area[0] = 0;
468 aio_req->work_area[1] = 0;
469 aio_req->req_id = rcb->tag;
470 aio_req->volume_id = (LE_32(rcb->dvp->scsi3addr[0]) & 0x3FFF);
471 aio_req->nexus_1 = rcb->it_nexus[0];
472 aio_req->nexus_2 = rcb->it_nexus[1];
473 aio_req->nexus_3 = rcb->it_nexus[2];
474 aio_req->buf_len = GET_SCSI_BUFFLEN(rcb);
475 aio_req->cmd_flags.data_dir = rcb->data_dir;
476 aio_req->cmd_flags.mem_type = 0;
477 aio_req->cmd_flags.fence = 0;
478 aio_req->cmd_flags.res2 = 0;
479 aio_req->attr_prio.task_attr = OS_GET_TASK_ATTR(rcb);
480 aio_req->attr_prio.cmd_prio = 0;
481 aio_req->attr_prio.res3 = 0;
482 if(rcb->cmdlen > sizeof(aio_req->cdb))
483 rcb->cmdlen = sizeof(aio_req->cdb);
484 memcpy(aio_req->cdb, rcb->cdbp, rcb->cmdlen);
485 aio_req->err_idx = aio_req->req_id;
486 aio_req->cdb_len = rcb->cmdlen;
487 aio_req->num_drives = LE_16(rcb->dvp->raid_map->layout_map_count);
491 aio_req->cmd_flags.encrypt_enable = true;
492 aio_req->encrypt_key_index =
494 aio_req->encrypt_twk_low =
496 aio_req->encrypt_twk_high =
499 aio_req->cmd_flags.encrypt_enable = 0;
500 aio_req->encrypt_key_index = 0;
501 aio_req->encrypt_twk_high = 0;
502 aio_req->encrypt_twk_low = 0;
505 aio_req->cmd_flags.partial = pqisrc_build_sgl(&aio_req->sg_desc[0], rcb,
506 &aio_req->header, num_elem_alloted);
508 aio_req->num_sg = aio_req->header.iu_length / sizeof(sgt_t);
510 /* DBG_INFO("aio_req->num_sg :%d\n", aio_req->num_sg); */
512 aio_req->header.iu_length += offsetof(pqi_aio_raid1_write_req_t, sg_desc) -
518 rcb->resp_qid = aio_req->response_queue_id;
526 pqi_aio_raid1_write_req_t *aio_req)
531 DBG_INFO("%15s: 0x%x\n", "iu_type", aio_req->header.iu_type);
532 DBG_INFO("%15s: 0x%x\n", "comp_feat", aio_req->header.comp_feature);
533 DBG_INFO("%15s: 0x%x\n", "length", aio_req->header.iu_length);
534 DBG_INFO("%15s: 0x%x\n", "resp_qid", aio_req->response_queue_id);
535 DBG_INFO("%15s: 0x%x\n", "req_id", aio_req->req_id);
536 DBG_INFO("%15s: 0x%x\n", "volume_id", aio_req->volume_id);
537 DBG_INFO("%15s: 0x%x\n", "nexus_1", aio_req->nexus_1);
538 DBG_INFO("%15s: 0x%x\n", "nexus_2", aio_req->nexus_2);
539 DBG_INFO("%15s: 0x%x\n", "nexus_3", aio_req->nexus_3);
540 DBG_INFO("%15s: 0x%x\n", "buf_len", aio_req->buf_len);
542 DBG_INFO("%15s: 0x%x\n", "data_dir", aio_req->cmd_flags.data_dir);
543 DBG_INFO("%15s: 0x%x\n", "partial", aio_req->cmd_flags.partial);
544 DBG_INFO("%15s: 0x%x\n", "mem_type", aio_req->cmd_flags.mem_type);
545 DBG_INFO("%15s: 0x%x\n", "fence", aio_req->cmd_flags.fence);
547 aio_req->cmd_flags.encrypt_enable);
549 DBG_INFO("%15s: 0x%x\n", "task_attr", aio_req->attr_prio.task_attr);
550 DBG_INFO("%15s: 0x%x\n", "cmd_prio", aio_req->attr_prio.cmd_prio);
551 DBG_INFO("%15s: 0x%x\n", "dek_index", aio_req->encrypt_key_index);
552 pqisrc_show_cdb(softs, "AIOR1W", rcb, aio_req->cdb);
553 DBG_INFO("%15s: 0x%x\n", "err_idx", aio_req->err_idx);
554 DBG_INFO("%15s: 0x%x\n", "num_sg", aio_req->num_sg);
555 DBG_INFO("%15s: 0x%x\n", "cdb_len", aio_req->cdb_len);
556 DBG_INFO("%15s: 0x%x\n", "num_drives", aio_req->num_drives);
557 DBG_INFO("%15s: 0x%x\n", "tweak_lower", aio_req->encrypt_twk_low);
558 DBG_INFO("%15s: 0x%x\n", "tweak_upper", aio_req->encrypt_twk_high);
561 (void *)aio_req->sg_desc[0].addr);
563 aio_req->sg_desc[0].len);
565 aio_req->sg_desc[0].flags);
573 pqi_aio_raid5or6_write_req_t *aio_req, rcb_t *rcb,
591 aio_req->header.iu_type =
595 aio_req->header.iu_type =
601 aio_req->header.comp_feature = 0;
602 aio_req->response_queue_id = OS_GET_IO_RESP_QID(softs, rcb);
603 aio_req->work_area[0] = 0;
604 aio_req->work_area[1] = 0;
605 aio_req->req_id = rcb->tag;
606 aio_req->volume_id = (LE_32(rcb->dvp->scsi3addr[0]) & 0x3FFF);
607 aio_req->data_it_nexus = rcb->dvp->raid_map->dev_data[rcb->raid_map_index].ioaccel_handle;
608 aio_req->p_parity_it_nexus =
610 if (aio_req->header.iu_type ==
612 aio_req->q_parity_it_nexus =
615 aio_req->xor_multiplier =
617 aio_req->row = rcb->row_num;
618 /*aio_req->reserved = rcb->row_num * rcb->blocks_per_row +
620 aio_req->buf_len = GET_SCSI_BUFFLEN(rcb);
621 aio_req->cmd_flags.data_dir = rcb->data_dir;
622 aio_req->cmd_flags.mem_type = 0;
623 aio_req->cmd_flags.fence = 0;
624 aio_req->cmd_flags.res2 = 0;
625 aio_req->attr_prio.task_attr = OS_GET_TASK_ATTR(rcb);
626 aio_req->attr_prio.cmd_prio = 0;
627 aio_req->attr_prio.res3 = 0;
628 if (rcb->cmdlen > sizeof(aio_req->cdb))
629 rcb->cmdlen = sizeof(aio_req->cdb);
630 memcpy(aio_req->cdb, rcb->cdbp, rcb->cmdlen);
631 aio_req->err_idx = aio_req->req_id;
632 aio_req->cdb_len = rcb->cmdlen;
635 aio_req->header.iu_type = iu_type;
636 aio_req->data_it_nexus = ;
637 aio_req->p_parity_it_nexus = ;
638 aio_req->q_parity_it_nexus = ;
639 aio_req->row = ;
640 aio_req->stripe_lba = ;
644 aio_req->cmd_flags.encrypt_enable = true;
645 aio_req->encrypt_key_index =
647 aio_req->encrypt_twk_low =
649 aio_req->encrypt_twk_high =
652 aio_req->cmd_flags.encrypt_enable = 0;
653 aio_req->encrypt_key_index = 0;
654 aio_req->encrypt_twk_high = 0;
655 aio_req->encrypt_twk_low = 0;
658 aio_req->cmd_flags.partial = pqisrc_build_sgl(&aio_req->sg_desc[0], rcb,
659 &aio_req->header, num_elem_alloted);
661 aio_req->num_sg = aio_req->header.iu_length / sizeof(sgt_t);
663 /* DBG_INFO("aio_req->num_sg :%d\n", aio_req->num_sg); */
665 aio_req->header.iu_length += offsetof(pqi_aio_raid5or6_write_req_t, sg_desc) -
670 rcb->resp_qid = aio_req->response_queue_id;
678 pqi_aio_raid5or6_write_req_t *aio_req)
682 DBG_INFO("%15s: 0x%x\n", "iu_type", aio_req->header.iu_type);
683 DBG_INFO("%15s: 0x%x\n", "comp_feat", aio_req->header.comp_feature);
684 DBG_INFO("%15s: 0x%x\n", "length", aio_req->header.iu_length);
685 DBG_INFO("%15s: 0x%x\n", "resp_qid", aio_req->response_queue_id);
686 DBG_INFO("%15s: 0x%x\n", "req_id", aio_req->req_id);
687 DBG_INFO("%15s: 0x%x\n", "volume_id", aio_req->volume_id);
689 aio_req->data_it_nexus);
691 aio_req->p_parity_it_nexus);
693 aio_req->q_parity_it_nexus);
694 DBG_INFO("%15s: 0x%x\n", "buf_len", aio_req->buf_len);
696 DBG_INFO("%15s: 0x%x\n", "data_dir", aio_req->cmd_flags.data_dir);
697 DBG_INFO("%15s: 0x%x\n", "partial", aio_req->cmd_flags.partial);
698 DBG_INFO("%15s: 0x%x\n", "mem_type", aio_req->cmd_flags.mem_type);
699 DBG_INFO("%15s: 0x%x\n", "fence", aio_req->cmd_flags.fence);
701 aio_req->cmd_flags.encrypt_enable);
703 DBG_INFO("%15s: 0x%x\n", "task_attr", aio_req->attr_prio.task_attr);
704 DBG_INFO("%15s: 0x%x\n", "cmd_prio", aio_req->attr_prio.cmd_prio);
705 DBG_INFO("%15s: 0x%x\n", "dek_index", aio_req->encrypt_key_index);
706 pqisrc_show_cdb(softs, "AIOR56W", rcb, aio_req->cdb);
707 DBG_INFO("%15s: 0x%x\n", "err_idx", aio_req->err_idx);
708 DBG_INFO("%15s: 0x%x\n", "num_sg", aio_req->num_sg);
709 DBG_INFO("%15s: 0x%x\n", "cdb_len", aio_req->cdb_len);
710 DBG_INFO("%15s: 0x%x\n", "tweak_lower", aio_req->encrypt_twk_low);
711 DBG_INFO("%15s: 0x%x\n", "tweak_upper", aio_req->encrypt_twk_high);
712 DBG_INFO("%15s: 0x%lx\n", "row", aio_req->row);
714 DBG_INFO("%15s: 0x%lx\n", "stripe_lba", aio_req->stripe_lba);
716 (void *)aio_req->sg_desc[0].addr);
718 aio_req->sg_desc[0].len);
720 aio_req->sg_desc[0].flags);
751 pqi_aio_req_t *aio_req, uint32_t num_elem_alloted)
759 pqisrc_show_aio_common(softs, rcb, aio_req);
765 pqisrc_show_aio_common(softs, rcb, aio_req);
770 (pqi_aio_raid1_write_req_t *)aio_req);
775 (pqi_aio_raid5or6_write_req_t *)aio_req);
787 pqi_aio_req_t *aio_req, uint32_t num_elem_alloted)
797 pqisrc_build_aio_common(softs, aio_req,
803 (pqi_aio_raid1_write_req_t *)aio_req,
810 (pqi_aio_raid5or6_write_req_t *)aio_req,
815 pqisrc_build_aio_common(softs, aio_req, rcb, num_elem_alloted);
818 pqisrc_show_aio_io(softs, rcb, aio_req, num_elem_alloted);