Lines Matching refs:scmnd
1034 struct scsi_cmnd *scmnd, in storvsc_handle_error() argument
1051 set_host_byte(scmnd, DID_REQUEUE); in storvsc_handle_error()
1067 set_host_byte(scmnd, DID_REQUEUE); in storvsc_handle_error()
1084 switch (scmnd->cmnd[0]) { in storvsc_handle_error()
1087 set_host_byte(scmnd, DID_PASSTHROUGH); in storvsc_handle_error()
1097 set_host_byte(scmnd, DID_ERROR); in storvsc_handle_error()
1102 set_host_byte(scmnd, DID_NO_CONNECT); in storvsc_handle_error()
1115 set_host_byte(scmnd, DID_TARGET_FAILURE); in storvsc_handle_error()
1130 struct scsi_cmnd *scmnd = cmd_request->cmd; in storvsc_command_completion() local
1144 scmnd->result = vm_srb->scsi_status; in storvsc_command_completion()
1146 if (scmnd->result) { in storvsc_command_completion()
1147 sense_ok = scsi_normalize_sense(scmnd->sense_buffer, in storvsc_command_completion()
1151 scsi_print_sense_hdr(scmnd->device, "storvsc", in storvsc_command_completion()
1156 storvsc_handle_error(vm_srb, scmnd, host, sense_hdr.asc, in storvsc_command_completion()
1171 scsi_set_resid(scmnd, in storvsc_command_completion()
1174 scmnd->scsi_done(scmnd); in storvsc_command_completion()
1347 struct scsi_cmnd *scmnd; in storvsc_on_channel_callback() local
1350 scmnd = scsi_host_find_tag(shost, rqst_id - 1); in storvsc_on_channel_callback()
1351 if (scmnd == NULL) { in storvsc_on_channel_callback()
1355 request = (struct storvsc_cmd_request *)scsi_cmd_priv(scmnd); in storvsc_on_channel_callback()
1678 static int storvsc_host_reset_handler(struct scsi_cmnd *scmnd) in storvsc_host_reset_handler() argument
1680 struct hv_host_device *host_dev = shost_priv(scmnd->device->host); in storvsc_host_reset_handler()
1734 static enum blk_eh_timer_return storvsc_eh_timed_out(struct scsi_cmnd *scmnd) in storvsc_eh_timed_out() argument
1739 static bool storvsc_scsi_cmd_ok(struct scsi_cmnd *scmnd) in storvsc_scsi_cmd_ok() argument
1742 u8 scsi_op = scmnd->cmnd[0]; in storvsc_scsi_cmd_ok()
1752 set_host_byte(scmnd, DID_ERROR); in storvsc_scsi_cmd_ok()
1761 static int storvsc_queuecommand(struct Scsi_Host *host, struct scsi_cmnd *scmnd) in storvsc_queuecommand() argument
1766 struct storvsc_cmd_request *cmd_request = scsi_cmd_priv(scmnd); in storvsc_queuecommand()
1784 if (!storvsc_scsi_cmd_ok(scmnd)) { in storvsc_queuecommand()
1785 scmnd->scsi_done(scmnd); in storvsc_queuecommand()
1791 cmd_request->cmd = scmnd; in storvsc_queuecommand()
1800 if (scmnd->device->tagged_supported) { in storvsc_queuecommand()
1808 switch (scmnd->sc_data_direction) { in storvsc_queuecommand()
1827 scmnd->sc_data_direction); in storvsc_queuecommand()
1833 vm_srb->path_id = scmnd->device->channel; in storvsc_queuecommand()
1834 vm_srb->target_id = scmnd->device->id; in storvsc_queuecommand()
1835 vm_srb->lun = scmnd->device->lun; in storvsc_queuecommand()
1837 vm_srb->cdb_length = scmnd->cmd_len; in storvsc_queuecommand()
1839 memcpy(vm_srb->cdb, scmnd->cmnd, vm_srb->cdb_length); in storvsc_queuecommand()
1841 sgl = (struct scatterlist *)scsi_sglist(scmnd); in storvsc_queuecommand()
1842 sg_count = scsi_sg_count(scmnd); in storvsc_queuecommand()
1844 length = scsi_bufflen(scmnd); in storvsc_queuecommand()