Lines Matching defs:ctsio

141 	struct ctl_scsiio	*ctsio;
246 ctl_inquiry_evpd_tpc(struct ctl_scsiio *ctsio, int alloc_len)
264 lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr;
279 ctsio->kern_data_ptr = malloc(data_len, M_CTL, M_WAITOK | M_ZERO);
280 tpc_ptr = (struct scsi_vpd_tpc *)ctsio->kern_data_ptr;
281 ctsio->kern_sg_entries = 0;
284 ctsio->residual = alloc_len - data_len;
285 ctsio->kern_data_len = data_len;
286 ctsio->kern_total_len = data_len;
288 ctsio->residual = 0;
289 ctsio->kern_data_len = alloc_len;
290 ctsio->kern_total_len = alloc_len;
292 ctsio->kern_data_resid = 0;
293 ctsio->kern_rel_offset = 0;
294 ctsio->kern_sg_entries = 0;
432 ctl_set_success(ctsio);
433 ctsio->io_hdr.flags |= CTL_FLAG_ALLOCATED;
434 ctsio->be_move_done = ctl_config_move_done;
435 ctl_datamove((union ctl_io *)ctsio);
441 ctl_receive_copy_operating_parameters(struct ctl_scsiio *ctsio)
450 cdb = (struct scsi_receive_copy_operating_parameters *)ctsio->cdb;
457 ctsio->kern_data_ptr = malloc(total_len, M_CTL, M_WAITOK | M_ZERO);
459 ctsio->kern_sg_entries = 0;
462 ctsio->residual = alloc_len - total_len;
463 ctsio->kern_data_len = total_len;
464 ctsio->kern_total_len = total_len;
466 ctsio->residual = 0;
467 ctsio->kern_data_len = alloc_len;
468 ctsio->kern_total_len = alloc_len;
470 ctsio->kern_data_resid = 0;
471 ctsio->kern_rel_offset = 0;
473 data = (struct scsi_receive_copy_operating_parameters_data *)ctsio->kern_data_ptr;
494 ctl_set_success(ctsio);
495 ctsio->io_hdr.flags |= CTL_FLAG_ALLOCATED;
496 ctsio->be_move_done = ctl_config_move_done;
497 ctl_datamove((union ctl_io *)ctsio);
517 ctl_receive_copy_status_lid1(struct ctl_scsiio *ctsio)
530 cdb = (struct scsi_receive_copy_status_lid1 *)ctsio->cdb;
531 lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr;
538 ctl_get_resindex(&ctsio->io_hdr.nexus));
541 ctl_set_invalid_field(ctsio, /*sks_valid*/ 1,
544 ctl_done((union ctl_io *)ctsio);
557 ctsio->kern_data_ptr = malloc(total_len, M_CTL, M_WAITOK | M_ZERO);
559 ctsio->kern_sg_entries = 0;
562 ctsio->residual = alloc_len - total_len;
563 ctsio->kern_data_len = total_len;
564 ctsio->kern_total_len = total_len;
566 ctsio->residual = 0;
567 ctsio->kern_data_len = alloc_len;
568 ctsio->kern_total_len = alloc_len;
570 ctsio->kern_data_resid = 0;
571 ctsio->kern_rel_offset = 0;
573 data = (struct scsi_receive_copy_status_lid1_data *)ctsio->kern_data_ptr;
591 ctl_set_success(ctsio);
592 ctsio->io_hdr.flags |= CTL_FLAG_ALLOCATED;
593 ctsio->be_move_done = ctl_config_move_done;
594 ctl_datamove((union ctl_io *)ctsio);
599 ctl_receive_copy_failure_details(struct ctl_scsiio *ctsio)
612 cdb = (struct scsi_receive_copy_failure_details *)ctsio->cdb;
613 lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr;
620 ctl_get_resindex(&ctsio->io_hdr.nexus));
623 ctl_set_invalid_field(ctsio, /*sks_valid*/ 1,
626 ctl_done((union ctl_io *)ctsio);
637 ctsio->kern_data_ptr = malloc(total_len, M_CTL, M_WAITOK | M_ZERO);
639 ctsio->kern_sg_entries = 0;
642 ctsio->residual = alloc_len - total_len;
643 ctsio->kern_data_len = total_len;
644 ctsio->kern_total_len = total_len;
646 ctsio->residual = 0;
647 ctsio->kern_data_len = alloc_len;
648 ctsio->kern_total_len = alloc_len;
650 ctsio->kern_data_resid = 0;
651 ctsio->kern_rel_offset = 0;
653 data = (struct scsi_receive_copy_failure_details_data *)ctsio->kern_data_ptr;
663 ctl_set_success(ctsio);
664 ctsio->io_hdr.flags |= CTL_FLAG_ALLOCATED;
665 ctsio->be_move_done = ctl_config_move_done;
666 ctl_datamove((union ctl_io *)ctsio);
671 ctl_receive_copy_status_lid4(struct ctl_scsiio *ctsio)
684 cdb = (struct scsi_receive_copy_status_lid4 *)ctsio->cdb;
685 lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr;
692 ctl_get_resindex(&ctsio->io_hdr.nexus));
695 ctl_set_invalid_field(ctsio, /*sks_valid*/ 1,
698 ctl_done((union ctl_io *)ctsio);
711 ctsio->kern_data_ptr = malloc(total_len, M_CTL, M_WAITOK | M_ZERO);
713 ctsio->kern_sg_entries = 0;
716 ctsio->residual = alloc_len - total_len;
717 ctsio->kern_data_len = total_len;
718 ctsio->kern_total_len = total_len;
720 ctsio->residual = 0;
721 ctsio->kern_data_len = alloc_len;
722 ctsio->kern_total_len = alloc_len;
724 ctsio->kern_data_resid = 0;
725 ctsio->kern_rel_offset = 0;
727 data = (struct scsi_receive_copy_status_lid4_data *)ctsio->kern_data_ptr;
749 ctl_set_success(ctsio);
750 ctsio->io_hdr.flags |= CTL_FLAG_ALLOCATED;
751 ctsio->be_move_done = ctl_config_move_done;
752 ctl_datamove((union ctl_io *)ctsio);
757 ctl_copy_operation_abort(struct ctl_scsiio *ctsio)
767 cdb = (struct scsi_copy_operation_abort *)ctsio->cdb;
768 lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr;
775 ctl_get_resindex(&ctsio->io_hdr.nexus));
778 ctl_set_invalid_field(ctsio, /*sks_valid*/ 1,
781 ctl_done((union ctl_io *)ctsio);
787 ctl_set_success(ctsio);
788 ctl_done((union ctl_io *)ctsio);
834 ctl_set_task_aborted(list->ctsio);
837 ctl_set_sense(list->ctsio, /*current_error*/ 1,
852 ctl_set_sense(list->ctsio, /*current_error*/ 1,
881 ctl_set_sense(list->ctsio, /*current_error*/ 1,
976 ctl_set_task_aborted(list->ctsio);
979 ctl_set_sense(list->ctsio, /*current_error*/ 1,
991 ctl_set_sense(list->ctsio, /*current_error*/ 1,
1034 ctl_set_task_aborted(list->ctsio);
1037 ctl_set_sense(list->ctsio, /*current_error*/ 1,
1049 ctl_set_sense(list->ctsio, /*current_error*/ 1,
1129 ctl_set_task_aborted(list->ctsio);
1132 ctl_set_sense(list->ctsio, /*current_error*/ 1,
1157 ctl_set_sense(list->ctsio, /*current_error*/ 1,
1180 ctl_set_sense(list->ctsio, /*current_error*/ 1,
1283 ctl_set_task_aborted(list->ctsio);
1286 ctl_set_sense(list->ctsio, /*current_error*/ 1,
1350 struct ctl_scsiio *ctsio = list->ctsio;
1379 ctl_set_sense(ctsio, /*current_error*/ 1,
1395 ctl_set_success(ctsio);
1415 list->sense_data = ctsio->sense_data;
1416 list->sense_len = ctsio->sense_len;
1417 list->scsi_status = ctsio->scsi_status;
1421 ctl_done((union ctl_io *)ctsio);
1579 ctl_extended_copy_lid1(struct ctl_scsiio *ctsio)
1591 lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr;
1592 cdb = (struct scsi_extended_copy *)ctsio->cdb;
1598 ctl_set_invalid_field(ctsio, /*sks_valid*/ 1, /*command*/ 1,
1607 if ((ctsio->io_hdr.flags & CTL_FLAG_ALLOCATED) == 0) {
1608 ctsio->kern_data_ptr = malloc(len, M_CTL, M_WAITOK);
1609 ctsio->kern_data_len = len;
1610 ctsio->kern_total_len = len;
1611 ctsio->kern_data_resid = 0;
1612 ctsio->kern_rel_offset = 0;
1613 ctsio->kern_sg_entries = 0;
1614 ctsio->io_hdr.flags |= CTL_FLAG_ALLOCATED;
1615 ctsio->be_move_done = ctl_config_move_done;
1616 ctl_datamove((union ctl_io *)ctsio);
1621 data = (struct scsi_extended_copy_lid1_data *)ctsio->kern_data_ptr;
1628 ctl_set_invalid_field(ctsio, /*sks_valid*/ 1, /*command*/ 0,
1633 ctl_set_sense(ctsio, /*current_error*/ 1,
1639 ctl_set_param_len_error(ctsio);
1649 list->init_port = ctsio->io_hdr.nexus.targ_port;
1650 list->init_idx = ctl_get_resindex(&ctsio->io_hdr.nexus);
1653 list->params = ctsio->kern_data_ptr;
1659 ctl_set_sense(ctsio, /*current_error*/ 1,
1672 list->ctsio = ctsio;
1680 ctl_set_invalid_field(ctsio, /*sks_valid*/ 1,
1697 if (ctsio->io_hdr.flags & CTL_FLAG_ALLOCATED) {
1698 free(ctsio->kern_data_ptr, M_CTL);
1699 ctsio->io_hdr.flags &= ~CTL_FLAG_ALLOCATED;
1701 ctl_done((union ctl_io *)ctsio);
1706 ctl_extended_copy_lid4(struct ctl_scsiio *ctsio)
1718 lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr;
1719 cdb = (struct scsi_extended_copy *)ctsio->cdb;
1725 ctl_set_invalid_field(ctsio, /*sks_valid*/ 1, /*command*/ 1,
1734 if ((ctsio->io_hdr.flags & CTL_FLAG_ALLOCATED) == 0) {
1735 ctsio->kern_data_ptr = malloc(len, M_CTL, M_WAITOK);
1736 ctsio->kern_data_len = len;
1737 ctsio->kern_total_len = len;
1738 ctsio->kern_data_resid = 0;
1739 ctsio->kern_rel_offset = 0;
1740 ctsio->kern_sg_entries = 0;
1741 ctsio->io_hdr.flags |= CTL_FLAG_ALLOCATED;
1742 ctsio->be_move_done = ctl_config_move_done;
1743 ctl_datamove((union ctl_io *)ctsio);
1748 data = (struct scsi_extended_copy_lid4_data *)ctsio->kern_data_ptr;
1755 ctl_set_invalid_field(ctsio, /*sks_valid*/ 1, /*command*/ 0,
1760 ctl_set_sense(ctsio, /*current_error*/ 1,
1766 ctl_set_param_len_error(ctsio);
1776 list->init_port = ctsio->io_hdr.nexus.targ_port;
1777 list->init_idx = ctl_get_resindex(&ctsio->io_hdr.nexus);
1780 list->params = ctsio->kern_data_ptr;
1786 ctl_set_sense(ctsio, /*current_error*/ 1,
1799 list->ctsio = ctsio;
1807 ctl_set_invalid_field(ctsio, /*sks_valid*/ 1,
1824 if (ctsio->io_hdr.flags & CTL_FLAG_ALLOCATED) {
1825 free(ctsio->kern_data_ptr, M_CTL);
1826 ctsio->io_hdr.flags &= ~CTL_FLAG_ALLOCATED;
1828 ctl_done((union ctl_io *)ctsio);
1880 ctl_populate_token(struct ctl_scsiio *ctsio)
1893 lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr;
1895 port = softc->ctl_ports[ctl_port_idx(ctsio->io_hdr.nexus.targ_port)];
1896 cdb = (struct scsi_populate_token *)ctsio->cdb;
1902 ctl_set_invalid_field(ctsio, /*sks_valid*/ 1, /*command*/ 1,
1911 if ((ctsio->io_hdr.flags & CTL_FLAG_ALLOCATED) == 0) {
1912 ctsio->kern_data_ptr = malloc(len, M_CTL, M_WAITOK);
1913 ctsio->kern_data_len = len;
1914 ctsio->kern_total_len = len;
1915 ctsio->kern_data_resid = 0;
1916 ctsio->kern_rel_offset = 0;
1917 ctsio->kern_sg_entries = 0;
1918 ctsio->io_hdr.flags |= CTL_FLAG_ALLOCATED;
1919 ctsio->be_move_done = ctl_config_move_done;
1920 ctl_datamove((union ctl_io *)ctsio);
1925 data = (struct scsi_populate_token_data *)ctsio->kern_data_ptr;
1928 ctl_set_invalid_field(ctsio, /*sks_valid*/ 1, /*command*/ 0,
1941 ctl_set_invalid_field(ctsio, /*sks_valid*/ 1, /*command*/ 0,
1948 list->init_port = ctsio->io_hdr.nexus.targ_port;
1949 list->init_idx = ctl_get_resindex(&ctsio->io_hdr.nexus);
1952 list->ctsio = ctsio;
1959 ctl_set_invalid_field(ctsio, /*sks_valid*/ 1,
1974 token->params = ctsio->kern_data_ptr;
1990 ctl_set_invalid_field(ctsio, /*sks_valid*/ 1,
2002 ctl_set_success(ctsio);
2003 ctl_done((union ctl_io *)ctsio);
2007 if (ctsio->io_hdr.flags & CTL_FLAG_ALLOCATED) {
2008 free(ctsio->kern_data_ptr, M_CTL);
2009 ctsio->io_hdr.flags &= ~CTL_FLAG_ALLOCATED;
2011 ctl_done((union ctl_io *)ctsio);
2016 ctl_write_using_token(struct ctl_scsiio *ctsio)
2028 lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr;
2030 cdb = (struct scsi_write_using_token *)ctsio->cdb;
2036 ctl_set_invalid_field(ctsio, /*sks_valid*/ 1, /*command*/ 1,
2045 if ((ctsio->io_hdr.flags & CTL_FLAG_ALLOCATED) == 0) {
2046 ctsio->kern_data_ptr = malloc(len, M_CTL, M_WAITOK);
2047 ctsio->kern_data_len = len;
2048 ctsio->kern_total_len = len;
2049 ctsio->kern_data_resid = 0;
2050 ctsio->kern_rel_offset = 0;
2051 ctsio->kern_sg_entries = 0;
2052 ctsio->io_hdr.flags |= CTL_FLAG_ALLOCATED;
2053 ctsio->be_move_done = ctl_config_move_done;
2054 ctl_datamove((union ctl_io *)ctsio);
2059 data = (struct scsi_write_using_token_data *)ctsio->kern_data_ptr;
2062 ctl_set_invalid_field(ctsio, /*sks_valid*/ 1, /*command*/ 0,
2074 list->init_port = ctsio->io_hdr.nexus.targ_port;
2075 list->init_idx = ctl_get_resindex(&ctsio->io_hdr.nexus);
2078 list->params = ctsio->kern_data_ptr;
2083 list->ctsio = ctsio;
2090 ctl_set_invalid_field(ctsio, /*sks_valid*/ 1,
2126 ctl_set_sense(ctsio, /*current_error*/ 1,
2136 if (ctsio->io_hdr.flags & CTL_FLAG_ALLOCATED) {
2137 free(ctsio->kern_data_ptr, M_CTL);
2138 ctsio->io_hdr.flags &= ~CTL_FLAG_ALLOCATED;
2140 ctl_done((union ctl_io *)ctsio);
2145 ctl_receive_rod_token_information(struct ctl_scsiio *ctsio)
2159 cdb = (struct scsi_receive_rod_token_information *)ctsio->cdb;
2160 lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr;
2167 ctl_get_resindex(&ctsio->io_hdr.nexus));
2170 ctl_set_invalid_field(ctsio, /*sks_valid*/ 1,
2173 ctl_done((union ctl_io *)ctsio);
2187 ctsio->kern_data_ptr = malloc(total_len, M_CTL, M_WAITOK | M_ZERO);
2189 ctsio->kern_sg_entries = 0;
2192 ctsio->residual = alloc_len - total_len;
2193 ctsio->kern_data_len = total_len;
2194 ctsio->kern_total_len = total_len;
2196 ctsio->residual = 0;
2197 ctsio->kern_data_len = alloc_len;
2198 ctsio->kern_total_len = alloc_len;
2200 ctsio->kern_data_resid = 0;
2201 ctsio->kern_rel_offset = 0;
2203 data = (struct scsi_receive_copy_status_lid4_data *)ctsio->kern_data_ptr;
2235 ctl_set_success(ctsio);
2236 ctsio->io_hdr.flags |= CTL_FLAG_ALLOCATED;
2237 ctsio->be_move_done = ctl_config_move_done;
2238 ctl_datamove((union ctl_io *)ctsio);
2243 ctl_report_all_rod_tokens(struct ctl_scsiio *ctsio)
2255 cdb = (struct scsi_report_all_rod_tokens *)ctsio->cdb;
2256 lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr;
2272 ctsio->kern_data_ptr = malloc(total_len, M_CTL, M_WAITOK | M_ZERO);
2274 ctsio->kern_sg_entries = 0;
2277 ctsio->residual = alloc_len - total_len;
2278 ctsio->kern_data_len = total_len;
2279 ctsio->kern_total_len = total_len;
2281 ctsio->residual = 0;
2282 ctsio->kern_data_len = alloc_len;
2283 ctsio->kern_total_len = alloc_len;
2285 ctsio->kern_data_resid = 0;
2286 ctsio->kern_rel_offset = 0;
2288 data = (struct scsi_report_all_rod_tokens_data *)ctsio->kern_data_ptr;
2303 ctl_set_success(ctsio);
2304 ctsio->io_hdr.flags |= CTL_FLAG_ALLOCATED;
2305 ctsio->be_move_done = ctl_config_move_done;
2306 ctl_datamove((union ctl_io *)ctsio);