| /freebsd-14-stable/sys/cam/ctl/ |
| HD | ctl_error.h | 55 void ctl_set_sense(struct ctl_scsiio *ctsio, int current_error, int sense_key, 61 void ctl_set_ua(struct ctl_scsiio *ctsio, int asc, int ascq); 66 void ctl_set_overlapped_cmd(struct ctl_scsiio *ctsio); 67 void ctl_set_overlapped_tag(struct ctl_scsiio *ctsio, uint8_t tag); 68 void ctl_set_invalid_field(struct ctl_scsiio *ctsio, int sks_valid, int command, 70 void ctl_set_invalid_field_ciu(struct ctl_scsiio *ctsio); 71 void ctl_set_invalid_opcode(struct ctl_scsiio *ctsio); 72 void ctl_set_param_len_error(struct ctl_scsiio *ctsio); 73 void ctl_set_already_locked(struct ctl_scsiio *ctsio); 74 void ctl_set_unsupported_lun(struct ctl_scsiio *ctsio); [all …]
|
| HD | ctl_error.c | 126 ctl_set_sense(struct ctl_scsiio *ctsio, int current_error, int sense_key, in ctl_set_sense() argument 138 lun = CTL_LUN(ctsio); in ctl_set_sense() 142 ctl_set_sense_data_va(&ctsio->sense_data, &sense_len, in ctl_set_sense() 152 ctsio->scsi_status = SCSI_STATUS_CHECK_COND; in ctl_set_sense() 153 ctsio->sense_len = sense_len; in ctl_set_sense() 154 ctsio->io_hdr.status = CTL_SCSI_ERROR | CTL_AUTOSENSE; in ctl_set_sense() 380 ctl_set_ua(struct ctl_scsiio *ctsio, int asc, int ascq) in ctl_set_ua() argument 382 ctl_set_sense(ctsio, in ctl_set_ua() 589 ctl_set_overlapped_cmd(struct ctl_scsiio *ctsio) in ctl_set_overlapped_cmd() argument 592 ctl_set_sense(ctsio, in ctl_set_overlapped_cmd() [all …]
|
| HD | ctl_private.h | 130 typedef int ctl_opfunc(struct ctl_scsiio *ctsio); 230 typedef int ctl_modesen_handler(struct ctl_scsiio *ctsio, 233 typedef int ctl_modesel_handler(struct ctl_scsiio *ctsio, 497 int ctl_scsi_release(struct ctl_scsiio *ctsio); 498 int ctl_scsi_reserve(struct ctl_scsiio *ctsio); 499 int ctl_start_stop(struct ctl_scsiio *ctsio); 500 int ctl_prevent_allow(struct ctl_scsiio *ctsio); 501 int ctl_sync_cache(struct ctl_scsiio *ctsio); 502 int ctl_format(struct ctl_scsiio *ctsio); 503 int ctl_read_buffer(struct ctl_scsiio *ctsio); [all …]
|
| HD | ctl_tpc.c | 149 struct ctl_scsiio *ctsio; member 270 ctl_inquiry_evpd_tpc(struct ctl_scsiio *ctsio, int alloc_len) in ctl_inquiry_evpd_tpc() argument 272 struct ctl_lun *lun = CTL_LUN(ctsio); in ctl_inquiry_evpd_tpc() 301 ctsio->kern_data_ptr = malloc(data_len, M_CTL, M_WAITOK | M_ZERO); in ctl_inquiry_evpd_tpc() 302 tpc_ptr = (struct scsi_vpd_tpc *)ctsio->kern_data_ptr; in ctl_inquiry_evpd_tpc() 303 ctsio->kern_rel_offset = 0; in ctl_inquiry_evpd_tpc() 304 ctsio->kern_sg_entries = 0; in ctl_inquiry_evpd_tpc() 305 ctsio->kern_data_len = min(data_len, alloc_len); in ctl_inquiry_evpd_tpc() 306 ctsio->kern_total_len = ctsio->kern_data_len; in ctl_inquiry_evpd_tpc() 443 ctl_set_success(ctsio); in ctl_inquiry_evpd_tpc() [all …]
|
| HD | ctl_scsi_all.c | 63 ctl_scsi_status_string(struct ctl_scsiio *ctsio) in ctl_scsi_status_string() argument 65 switch(ctsio->scsi_status) { in ctl_scsi_status_string() 89 ctsio->scsi_status); in ctl_scsi_status_string() 99 ctl_scsi_command_string(struct ctl_scsiio *ctsio, in ctl_scsi_command_string() argument 105 scsi_op_desc(ctsio->cdb[0], inq_data), in ctl_scsi_command_string() 106 scsi_cdb_string(ctsio->cdb, cdb_str, sizeof(cdb_str))); in ctl_scsi_command_string() 124 ctl_scsi_sense_sbuf(struct ctl_scsiio *ctsio, in ctl_scsi_sense_sbuf() argument 130 if ((ctsio == NULL) || (sb == NULL)) in ctl_scsi_sense_sbuf() 133 ctl_scsi_path_string((union ctl_io *)ctsio, path_str, sizeof(path_str)); in ctl_scsi_sense_sbuf() 138 ctl_scsi_command_string(ctsio, inq_data, sb); in ctl_scsi_sense_sbuf() [all …]
|
| HD | ctl.c | 464 static void ctl_serialize_other_sc_cmd(struct ctl_scsiio *ctsio); 478 struct ctl_scsiio *ctsio, 484 static int ctl_inquiry_evpd_supported(struct ctl_scsiio *ctsio, int alloc_len); 485 static int ctl_inquiry_evpd_serial(struct ctl_scsiio *ctsio, int alloc_len); 486 static int ctl_inquiry_evpd_devid(struct ctl_scsiio *ctsio, int alloc_len); 487 static int ctl_inquiry_evpd_eid(struct ctl_scsiio *ctsio, int alloc_len); 488 static int ctl_inquiry_evpd_mpp(struct ctl_scsiio *ctsio, int alloc_len); 489 static int ctl_inquiry_evpd_scsi_ports(struct ctl_scsiio *ctsio, 491 static int ctl_inquiry_evpd_sfs(struct ctl_scsiio *ctsio, int alloc_len); 492 static int ctl_inquiry_evpd_block_limits(struct ctl_scsiio *ctsio, [all …]
|
| HD | ctl_util.c | 101 struct ctl_scsiio *ctsio; in ctl_scsi_tur() local 107 ctsio = &io->scsiio; in ctl_scsi_tur() 108 cdb = (struct scsi_test_unit_ready *)ctsio->cdb; in ctl_scsi_tur() 113 ctsio->tag_type = tag_type; in ctl_scsi_tur() 114 ctsio->cdb_len = sizeof(*cdb); in ctl_scsi_tur() 115 ctsio->ext_data_len = 0; in ctl_scsi_tur() 116 ctsio->ext_data_ptr = NULL; in ctl_scsi_tur() 117 ctsio->ext_sg_entries = 0; in ctl_scsi_tur() 118 ctsio->ext_data_filled = 0; in ctl_scsi_tur() 119 ctsio->sense_len = SSD_FULL_SIZE; in ctl_scsi_tur() [all …]
|
| HD | ctl_tpc_local.c | 140 struct ctl_scsiio *ctsio; in tpcl_datamove() local 145 ctsio = &io->scsiio; in tpcl_datamove() 152 if (ctsio->ext_data_ptr == NULL) in tpcl_datamove() 159 if (ctsio->ext_sg_entries > 0) { in tpcl_datamove() 162 ext_sglist = (struct ctl_sg_entry *)ctsio->ext_data_ptr; in tpcl_datamove() 163 ext_sg_entries = ctsio->ext_sg_entries; in tpcl_datamove() 169 ctsio->ext_data_filled) { in tpcl_datamove() 171 ext_offset = ctsio->ext_data_filled - len_seen; in tpcl_datamove() 178 ext_sglist->addr = ctsio->ext_data_ptr; in tpcl_datamove() 179 ext_sglist->len = ctsio->ext_data_len; in tpcl_datamove() [all …]
|
| HD | ctl_frontend_ioctl.c | 334 ctl_ioctl_do_datamove(struct ctl_scsiio *ctsio) in ctl_ioctl_do_datamove() argument 350 if (ctsio->io_hdr.flags & CTL_FLAG_NO_DATAMOVE) { in ctl_ioctl_do_datamove() 352 ctsio->ext_data_filled += ctsio->kern_data_len; in ctl_ioctl_do_datamove() 353 ctsio->kern_data_resid = 0; in ctl_ioctl_do_datamove() 361 if (ctsio->ext_sg_entries > 0) { in ctl_ioctl_do_datamove() 364 ext_sglen = ctsio->ext_sg_entries * sizeof(*ext_sglist); in ctl_ioctl_do_datamove() 368 if (copyin(ctsio->ext_data_ptr, ext_sglist, ext_sglen) != 0) { in ctl_ioctl_do_datamove() 369 ctsio->io_hdr.port_status = 31343; in ctl_ioctl_do_datamove() 372 ext_sg_entries = ctsio->ext_sg_entries; in ctl_ioctl_do_datamove() 378 ctsio->ext_data_filled) { in ctl_ioctl_do_datamove() [all …]
|
| HD | ctl_scsi_all.h | 32 const char * ctl_scsi_status_string(struct ctl_scsiio *ctsio); 34 void ctl_scsi_sense_print(struct ctl_scsiio *ctsio, 37 void ctl_scsi_sense_print(struct ctl_scsiio *ctsio, 41 int ctl_scsi_command_string(struct ctl_scsiio *ctsio, 43 int ctl_scsi_sense_sbuf(struct ctl_scsiio *ctsio, 47 char *ctl_scsi_sense_string(struct ctl_scsiio *ctsio,
|
| HD | ctl.h | 160 int ctl_default_page_handler(struct ctl_scsiio *ctsio, 163 int ctl_ie_page_handler(struct ctl_scsiio *ctsio, 166 int ctl_temp_log_sense_handler(struct ctl_scsiio *ctsio, 169 int ctl_lbp_log_sense_handler(struct ctl_scsiio *ctsio, 172 int ctl_sap_log_sense_handler(struct ctl_scsiio *ctsio, 175 int ctl_ie_log_sense_handler(struct ctl_scsiio *ctsio,
|
| /freebsd-14-stable/sys/dev/cxgbe/cxgbei/ |
| HD | icl_cxgbei.c | 1573 struct ctl_scsiio *ctsio = &io->scsiio; in icl_cxgbei_conn_transfer_setup() local 1582 int sg_entries = ctsio->kern_sg_entries; in icl_cxgbei_conn_transfer_setup() 1590 if (ctsio->ext_data_filled == 0) { in icl_cxgbei_conn_transfer_setup() 1610 xferlen = ctsio->kern_data_len; in icl_cxgbei_conn_transfer_setup() 1632 sgl->addr = (void *)ctsio->kern_data_ptr; in icl_cxgbei_conn_transfer_setup() 1635 sgl = (void *)ctsio->kern_data_ptr; in icl_cxgbei_conn_transfer_setup() 1693 ddp->cmp.next_buffer_offset = ctsio->kern_rel_offset + in icl_cxgbei_conn_transfer_setup() 1699 *arg = ctsio; in icl_cxgbei_conn_transfer_setup() 1708 ddp = io_to_ddp_state(ctsio); in icl_cxgbei_conn_transfer_setup() 1721 *arg = ctsio; in icl_cxgbei_conn_transfer_setup() [all …]
|