/openbmc/linux/drivers/scsi/device_handler/ |
H A D | scsi_dh_hp_sw.c | 44 struct scsi_sense_hdr *sshdr) in tur_done() argument 48 switch (sshdr->sense_key) { in tur_done() 53 if (sshdr->asc == 0x04 && sshdr->ascq == 2) { in tur_done() 67 HP_SW_NAME, sshdr->sense_key, sshdr->asc, in tur_done() 68 sshdr->ascq); in tur_done() 84 struct scsi_sense_hdr sshdr; in hp_sw_tur() local 89 .sshdr = &sshdr, in hp_sw_tur() 96 if (scsi_sense_valid(&sshdr)) in hp_sw_tur() 97 ret = tur_done(sdev, h, &sshdr); in hp_sw_tur() 123 struct scsi_sense_hdr sshdr; in hp_sw_start_stop() local [all …]
|
H A D | scsi_dh_emc.c | 101 struct scsi_sense_hdr *sshdr) in trespass_endio() argument 107 "command.\n", CLARIION_NAME, sshdr->sense_key, in trespass_endio() 108 sshdr->asc, sshdr->ascq); in trespass_endio() 110 if (sshdr->sense_key == 0x05 && sshdr->asc == 0x04 && in trespass_endio() 111 sshdr->ascq == 0x00) { in trespass_endio() 120 } else if (sshdr->sense_key == 0x02 && sshdr->asc == 0x04 && in trespass_endio() 121 sshdr->ascq == 0x03) { in trespass_endio() 241 struct scsi_sense_hdr sshdr; in send_trespass_cmd() local 245 .sshdr = &sshdr, in send_trespass_cmd() 273 if (scsi_sense_valid(&sshdr)) in send_trespass_cmd() [all …]
|
H A D | scsi_dh_alua.c | 127 int bufflen, struct scsi_sense_hdr *sshdr, int flags) in submit_rtpg() argument 133 .sshdr = sshdr, in submit_rtpg() 158 struct scsi_sense_hdr *sshdr) in submit_stpg() argument 166 .sshdr = sshdr, in submit_stpg()
|
/openbmc/linux/drivers/scsi/ |
H A D | sr_ioctl.c | 191 struct scsi_sense_hdr local_sshdr, *sshdr; in sr_do_ioctl() local 194 .sshdr = cgc->sshdr ? : &local_sshdr, in sr_do_ioctl() 199 sshdr = exec_args.sshdr; in sr_do_ioctl() 218 switch (sshdr->sense_key) { in sr_do_ioctl() 229 if (sshdr->asc == 0x04 && in sr_do_ioctl() 230 sshdr->ascq == 0x01) { in sr_do_ioctl() 253 if (sshdr->asc == 0x20 && in sr_do_ioctl() 254 sshdr->ascq == 0x00) in sr_do_ioctl() 296 struct scsi_sense_hdr sshdr; in sr_drive_status() local 303 if (!scsi_test_unit_ready(cd->device, SR_TIMEOUT, MAX_RETRIES, &sshdr)) in sr_drive_status() [all …]
|
H A D | scsi_common.c | 191 struct scsi_sense_hdr *sshdr) in scsi_normalize_sense() argument 193 memset(sshdr, 0, sizeof(struct scsi_sense_hdr)); in scsi_normalize_sense() 198 sshdr->response_code = (sense_buffer[0] & 0x7f); in scsi_normalize_sense() 200 if (!scsi_sense_valid(sshdr)) in scsi_normalize_sense() 203 if (sshdr->response_code >= 0x72) { in scsi_normalize_sense() 208 sshdr->sense_key = (sense_buffer[1] & 0xf); in scsi_normalize_sense() 210 sshdr->asc = sense_buffer[2]; in scsi_normalize_sense() 212 sshdr->ascq = sense_buffer[3]; in scsi_normalize_sense() 214 sshdr->additional_length = sense_buffer[7]; in scsi_normalize_sense() 220 sshdr->sense_key = (sense_buffer[2] & 0xf); in scsi_normalize_sense() [all …]
|
H A D | sd.c | 144 struct scsi_sense_hdr sshdr; in cache_type_store() local 194 sdkp->max_retries, &data, &sshdr)) { in cache_type_store() 195 if (scsi_sense_valid(&sshdr)) in cache_type_store() 196 sd_print_sense_hdr(sdkp, &sshdr); in cache_type_store() 1550 struct scsi_sense_hdr *sshdr) in media_not_present() argument 1552 if (!scsi_sense_valid(sshdr)) in media_not_present() 1556 switch (sshdr->sense_key) { in media_not_present() 1560 if (sshdr->asc == 0x3A) { in media_not_present() 1611 struct scsi_sense_hdr sshdr = { 0, }; in sd_check_events() local 1614 &sshdr); in sd_check_events() [all …]
|
H A D | scsi_error.c | 458 struct scsi_sense_hdr *sshdr) in scsi_report_sense() argument 462 if (sshdr->sense_key == UNIT_ATTENTION) { in scsi_report_sense() 463 if (sshdr->asc == 0x3f && sshdr->ascq == 0x03) { in scsi_report_sense() 467 } else if (sshdr->asc == 0x3f && sshdr->ascq == 0x0e) { in scsi_report_sense() 474 } else if (sshdr->asc == 0x3f) in scsi_report_sense() 480 if (sshdr->asc == 0x38 && sshdr->ascq == 0x07) { in scsi_report_sense() 488 if (sshdr->asc == 0x29) { in scsi_report_sense() 499 if (sshdr->asc == 0x2a && sshdr->ascq == 0x01) { in scsi_report_sense() 503 } else if (sshdr->asc == 0x2a && sshdr->ascq == 0x06) { in scsi_report_sense() 507 } else if (sshdr->asc == 0x2a && sshdr->ascq == 0x09) { in scsi_report_sense() [all …]
|
H A D | scsi_logging.c | 270 const struct scsi_sense_hdr *sshdr) in scsi_format_sense_hdr() argument 276 sense_txt = scsi_sense_key_string(sshdr->sense_key); in scsi_format_sense_hdr() 282 "0x%x ", sshdr->sense_key); in scsi_format_sense_hdr() 284 scsi_sense_is_deferred(sshdr) ? "[deferred] " : "[current] "); in scsi_format_sense_hdr() 286 if (sshdr->response_code >= 0x72) in scsi_format_sense_hdr() 319 int tag, const struct scsi_sense_hdr *sshdr) in scsi_log_print_sense_hdr() argument 328 off += scsi_format_sense_hdr(logbuf + off, logbuf_len - off, sshdr); in scsi_log_print_sense_hdr() 337 sshdr->asc, sshdr->ascq); in scsi_log_print_sense_hdr() 346 struct scsi_sense_hdr sshdr; in scsi_log_print_sense() local 348 if (scsi_normalize_sense(sense_buffer, sense_len, &sshdr)) in scsi_log_print_sense() [all …]
|
H A D | scsi_lib.c | 253 if (args->sshdr) in scsi_execute_cmd() 255 args->sshdr); in scsi_execute_cmd() 693 struct scsi_sense_hdr sshdr; in scsi_io_completion_action() local 698 sense_valid = scsi_command_normalize_sense(cmd, &sshdr); in scsi_io_completion_action() 700 sense_current = !scsi_sense_is_deferred(&sshdr); in scsi_io_completion_action() 711 switch (sshdr.sense_key) { in scsi_io_completion_action() 738 sshdr.asc == 0x20 && sshdr.ascq == 0x00) && in scsi_io_completion_action() 744 } else if (sshdr.asc == 0x10) /* DIX */ { in scsi_io_completion_action() 748 } else if (sshdr.asc == 0x20 || sshdr.asc == 0x24) { in scsi_io_completion_action() 756 if (sshdr.asc == 0x10) /* DIF */ in scsi_io_completion_action() [all …]
|
H A D | sr.c | 172 struct scsi_sense_hdr sshdr; in sr_get_events() local 174 .sshdr = &sshdr, in sr_get_events() 180 if (scsi_sense_valid(&sshdr) && sshdr.sense_key == UNIT_ATTENTION) in sr_get_events() 210 struct scsi_sense_hdr sshdr; in sr_check_events() local 248 ret = scsi_test_unit_ready(cd->device, SR_TIMEOUT, MAX_RETRIES, &sshdr); in sr_check_events() 256 (scsi_sense_valid(&sshdr) && sshdr.asc != 0x3a); in sr_check_events() 478 struct scsi_sense_hdr sshdr; in sr_revalidate_disk() local 481 if (scsi_test_unit_ready(cd->device, SR_TIMEOUT, MAX_RETRIES, &sshdr)) in sr_revalidate_disk() 800 struct scsi_sense_hdr sshdr; in get_capabilities() local 825 scsi_test_unit_ready(cd->device, SR_TIMEOUT, MAX_RETRIES, &sshdr); in get_capabilities() [all …]
|
H A D | ses.c | 91 struct scsi_sense_hdr sshdr; in ses_recv_diag() local 93 .sshdr = &sshdr, in ses_recv_diag() 99 } while (ret > 0 && --retries && scsi_sense_valid(&sshdr) && in ses_recv_diag() 100 (sshdr.sense_key == NOT_READY || in ses_recv_diag() 101 (sshdr.sense_key == UNIT_ATTENTION && sshdr.asc == 0x29))); in ses_recv_diag() 134 struct scsi_sense_hdr sshdr; in ses_send_diag() local 137 .sshdr = &sshdr, in ses_send_diag() 143 } while (result > 0 && --retries && scsi_sense_valid(&sshdr) && in ses_send_diag() 144 (sshdr.sense_key == NOT_READY || in ses_send_diag() 145 (sshdr.sense_key == UNIT_ATTENTION && sshdr.asc == 0x29))); in ses_send_diag()
|
H A D | scsi.c | 550 struct scsi_sense_hdr sshdr; in scsi_report_opcode() local 553 .sshdr = &sshdr, in scsi_report_opcode() 586 if (result && scsi_sense_valid(&sshdr) && in scsi_report_opcode() 587 sshdr.sense_key == ILLEGAL_REQUEST && in scsi_report_opcode() 588 (sshdr.asc == 0x20 || sshdr.asc == 0x24) && sshdr.ascq == 0x00) in scsi_report_opcode() 697 struct scsi_sense_hdr sshdr; in scsi_cdl_enable() local 736 &data, &sshdr); in scsi_cdl_enable() 738 if (scsi_sense_valid(&sshdr)) in scsi_cdl_enable() 740 dev_name(&sdev->sdev_gendev), &sshdr); in scsi_cdl_enable()
|
H A D | ch.c | 164 static int ch_find_errno(struct scsi_sense_hdr *sshdr) in ch_find_errno() argument 169 if (scsi_sense_valid(sshdr) && in ch_find_errno() 170 sshdr->asc != 0) { in ch_find_errno() 172 if (ch_err[i].sense == sshdr->sense_key && in ch_find_errno() 173 ch_err[i].asc == sshdr->asc && in ch_find_errno() 174 ch_err[i].ascq == sshdr->ascq) { in ch_find_errno() 190 struct scsi_sense_hdr sshdr; in ch_do_scsi() local 192 .sshdr = &sshdr, in ch_do_scsi() 204 if (scsi_sense_valid(&sshdr)) { in ch_do_scsi() 206 scsi_print_sense_hdr(ch->device, ch->name, &sshdr); in ch_do_scsi() [all …]
|
H A D | sd_zbc.c | 150 struct scsi_sense_hdr sshdr; in sd_zbc_do_report_zones() local 152 .sshdr = &sshdr, in sd_zbc_do_report_zones() 172 if (result > 0 && scsi_sense_valid(&sshdr)) in sd_zbc_do_report_zones() 173 sd_print_sense_hdr(sdkp, &sshdr); in sd_zbc_do_report_zones() 606 struct scsi_sense_hdr *sshdr) in sd_zbc_complete() argument 613 sshdr->sense_key == ILLEGAL_REQUEST && in sd_zbc_complete() 614 sshdr->asc == 0x24) { in sd_zbc_complete()
|
H A D | scsi_scan.c | 650 struct scsi_sense_hdr sshdr; in scsi_probe_lun() local 652 .sshdr = &sshdr, in scsi_probe_lun() 695 scsi_sense_valid(&sshdr)) { in scsi_probe_lun() 696 if ((sshdr.sense_key == UNIT_ATTENTION) && in scsi_probe_lun() 697 ((sshdr.asc == 0x28) || in scsi_probe_lun() 698 (sshdr.asc == 0x29)) && in scsi_probe_lun() 699 (sshdr.ascq == 0)) in scsi_probe_lun() 1408 struct scsi_sense_hdr sshdr; in scsi_report_lun_scan() local 1412 .sshdr = &sshdr, in scsi_report_lun_scan() 1500 else if (scsi_sense_valid(&sshdr)) { in scsi_report_lun_scan() [all …]
|
H A D | sd.h | 251 struct scsi_sense_hdr *sshdr); 280 unsigned int good_bytes, struct scsi_sense_hdr *sshdr) in sd_zbc_complete() argument 296 void sd_print_sense_hdr(struct scsi_disk *sdkp, struct scsi_sense_hdr *sshdr);
|
H A D | scsi_ioctl.c | 71 struct scsi_sense_hdr sshdr; in ioctl_internal_command() local 73 .sshdr = &sshdr, in ioctl_internal_command() 87 if (scsi_sense_valid(&sshdr)) { in ioctl_internal_command() 88 switch (sshdr.sense_key) { in ioctl_internal_command() 97 sshdr.asc, sshdr.ascq); in ioctl_internal_command() 114 scsi_print_sense_hdr(sdev, NULL, &sshdr); in ioctl_internal_command()
|
H A D | scsi_transport_spi.c | 109 struct scsi_sense_hdr *sshdr) in spi_execute() argument 117 .sshdr = sshdr ? : &sshdr_tmp, in spi_execute() 120 sshdr = exec_args.sshdr; in spi_execute() 129 if (result < 0 || !scsi_sense_valid(sshdr) || in spi_execute() 130 sshdr->sense_key != UNIT_ATTENTION) in spi_execute() 632 struct scsi_sense_hdr sshdr; in spi_dv_device_echo_buffer() local 678 buffer, len, &sshdr); in spi_dv_device_echo_buffer() 682 if (result > 0 && scsi_sense_valid(&sshdr) in spi_dv_device_echo_buffer() 683 && sshdr.sense_key == ILLEGAL_REQUEST in spi_dv_device_echo_buffer() 685 && sshdr.asc == 0x24 && sshdr.ascq == 0x00) in spi_dv_device_echo_buffer()
|
H A D | myrs.c | 818 struct scsi_sense_hdr sshdr = {0}; in myrs_log_event() local 823 if (!scsi_normalize_sense(ev->sense_data, 40, &sshdr)) { in myrs_log_event() 824 memset(&sshdr, 0x0, sizeof(sshdr)); in myrs_log_event() 832 if (sshdr.sense_key == VENDOR_SPECIFIC && in myrs_log_event() 833 (sshdr.asc == 0x80 || sshdr.asc == 0x81)) in myrs_log_event() 834 ev->ev_code = ((sshdr.asc - 0x80) << 8 | sshdr.ascq); in myrs_log_event() 892 if (sshdr.sense_key == NO_SENSE || in myrs_log_event() 893 (sshdr.sense_key == NOT_READY && in myrs_log_event() 894 sshdr.asc == 0x04 && (sshdr.ascq == 0x01 || in myrs_log_event() 895 sshdr.ascq == 0x02))) in myrs_log_event() [all …]
|
/openbmc/linux/include/scsi/ |
H A D | scsi_eh.h | 19 struct scsi_sense_hdr *sshdr); 22 static inline bool scsi_sense_is_deferred(const struct scsi_sense_hdr *sshdr) in scsi_sense_is_deferred() argument 24 return ((sshdr->response_code >= 0x70) && (sshdr->response_code & 1)); in scsi_sense_is_deferred()
|
H A D | scsi_common.h | 74 static inline bool scsi_sense_valid(const struct scsi_sense_hdr *sshdr) in scsi_sense_valid() argument 76 if (!sshdr) in scsi_sense_valid() 79 return (sshdr->response_code & 0x70) == 0x70; in scsi_sense_valid() 83 struct scsi_sense_hdr *sshdr);
|
/openbmc/linux/drivers/usb/storage/ |
H A D | transport.c | 709 struct scsi_sense_hdr sshdr; in usb_stor_invoke_transport() local 800 &sshdr); in usb_stor_invoke_transport() 805 sshdr.response_code, sshdr.sense_key, in usb_stor_invoke_transport() 806 sshdr.asc, sshdr.ascq); in usb_stor_invoke_transport() 808 usb_stor_show_sense(us, sshdr.sense_key, sshdr.asc, sshdr.ascq); in usb_stor_invoke_transport() 823 if (sshdr.sense_key == 0 && sshdr.asc == 0 && sshdr.ascq == 0 && in usb_stor_invoke_transport() 853 if ((sshdr.response_code & 0x72) == 0x72) in usb_stor_invoke_transport()
|
/openbmc/linux/drivers/block/ |
H A D | pktcdvd.c | 769 struct scsi_sense_hdr *sshdr = cgc->sshdr; in pkt_dump_sense() local 771 if (sshdr) in pkt_dump_sense() 774 sshdr->sense_key, sshdr->asc, sshdr->ascq, in pkt_dump_sense() 775 sense_key_string(sshdr->sense_key)); in pkt_dump_sense() 808 struct scsi_sense_hdr sshdr; in pkt_set_speed() local 812 cgc.sshdr = &sshdr; in pkt_set_speed() 1628 struct scsi_sense_hdr sshdr; in pkt_set_write_settings() local 1639 cgc.sshdr = &sshdr; in pkt_set_write_settings() 1655 cgc.sshdr = &sshdr; in pkt_set_write_settings() 1897 struct scsi_sense_hdr sshdr; in pkt_write_caching() local [all …]
|
/openbmc/linux/include/trace/events/ |
H A D | scsi.h | 278 struct scsi_sense_hdr sshdr; 294 scsi_command_normalize_sense(cmd, &sshdr)) { 295 __entry->sense_key = sshdr.sense_key; 296 __entry->asc = sshdr.asc; 297 __entry->ascq = sshdr.ascq;
|
/openbmc/linux/drivers/scsi/cxlflash/ |
H A D | superpipe.c | 335 struct scsi_sense_hdr sshdr; in read_cap16() local 337 .sshdr = &sshdr, in read_cap16() 374 if (result > 0 && scsi_sense_valid(&sshdr)) { in read_cap16() 376 switch (sshdr.sense_key) { in read_cap16() 383 switch (sshdr.asc) { in read_cap16() 1780 struct scsi_sense_hdr sshdr = { 0 }; in process_sense() local 1784 DK_CXLFLASH_VERIFY_SENSE_LEN, &sshdr); in process_sense() 1791 switch (sshdr.sense_key) { in process_sense() 1797 switch (sshdr.asc) { in process_sense() 1825 sshdr.sense_key, sshdr.asc, sshdr.ascq, rc); in process_sense()
|