@@ -2848,7 +2848,8 @@ lpfc_calc_bg_err(struct lpfc_hba *phba, struct lpfc_io_buf *lpfc_cmd)
}
out:
if (err_type == BGS_GUARD_ERR_MASK) {
- scsi_build_sense(cmd, 1, ILLEGAL_REQUEST, 0x10, 0x1);
+ scsi_set_sense(cmd, 1, ILLEGAL_REQUEST,
+ LOGICAL_BLOCK_GUARD_CHECK_FAILED);
set_host_byte(cmd, DID_ABORT);
phba->bg_guard_err_cnt++;
lpfc_printf_log(phba, KERN_WARNING, LOG_FCP | LOG_BG,
@@ -2857,7 +2858,8 @@ lpfc_calc_bg_err(struct lpfc_hba *phba, struct lpfc_io_buf *lpfc_cmd)
sum, guard_tag);
} else if (err_type == BGS_REFTAG_ERR_MASK) {
- scsi_build_sense(cmd, 1, ILLEGAL_REQUEST, 0x10, 0x3);
+ scsi_set_sense(cmd, 1, ILLEGAL_REQUEST,
+ LOGICAL_BLOCK_REFERENCE_TAG_CHECK_FAILED);
set_host_byte(cmd, DID_ABORT);
phba->bg_reftag_err_cnt++;
@@ -2867,7 +2869,8 @@ lpfc_calc_bg_err(struct lpfc_hba *phba, struct lpfc_io_buf *lpfc_cmd)
ref_tag, start_ref_tag);
} else if (err_type == BGS_APPTAG_ERR_MASK) {
- scsi_build_sense(cmd, 1, ILLEGAL_REQUEST, 0x10, 0x2);
+ scsi_set_sense(cmd, 1, ILLEGAL_REQUEST,
+ LOGICAL_BLOCK_APPLICATION_TAG_CHECK_FAILED);
set_host_byte(cmd, DID_ABORT);
phba->bg_apptag_err_cnt++;
@@ -2970,7 +2973,8 @@ lpfc_parse_bg_err(struct lpfc_hba *phba, struct lpfc_io_buf *lpfc_cmd,
if (lpfc_bgs_get_guard_err(bgstat)) {
ret = 1;
- scsi_build_sense(cmd, 1, ILLEGAL_REQUEST, 0x10, 0x1);
+ scsi_set_sense(cmd, 1, ILLEGAL_REQUEST,
+ LOGICAL_BLOCK_GUARD_CHECK_FAILED);
set_host_byte(cmd, DID_ABORT);
phba->bg_guard_err_cnt++;
lpfc_printf_log(phba, KERN_WARNING, LOG_FCP | LOG_BG,
@@ -2983,7 +2987,8 @@ lpfc_parse_bg_err(struct lpfc_hba *phba, struct lpfc_io_buf *lpfc_cmd,
if (lpfc_bgs_get_reftag_err(bgstat)) {
ret = 1;
- scsi_build_sense(cmd, 1, ILLEGAL_REQUEST, 0x10, 0x3);
+ scsi_set_sense(cmd, 1, ILLEGAL_REQUEST,
+ LOGICAL_BLOCK_REFERENCE_TAG_CHECK_FAILED);
set_host_byte(cmd, DID_ABORT);
phba->bg_reftag_err_cnt++;
lpfc_printf_log(phba, KERN_WARNING, LOG_FCP | LOG_BG,
@@ -2996,7 +3001,8 @@ lpfc_parse_bg_err(struct lpfc_hba *phba, struct lpfc_io_buf *lpfc_cmd,
if (lpfc_bgs_get_apptag_err(bgstat)) {
ret = 1;
- scsi_build_sense(cmd, 1, ILLEGAL_REQUEST, 0x10, 0x2);
+ scsi_set_sense(cmd, 1, ILLEGAL_REQUEST,
+ LOGICAL_BLOCK_APPLICATION_TAG_CHECK_FAILED);
set_host_byte(cmd, DID_ABORT);
phba->bg_apptag_err_cnt++;
lpfc_printf_log(phba, KERN_WARNING, LOG_FCP | LOG_BG,
Refactor the lpfc driver to use scsi_set_sense() and replace all hard-coded additional sense codes and additional sense code qualifiers with the enum values defined in include/scsi/scsi_sense.h. This helps with code clarity as the sense codes being processed are easier to test and self-documented. No functional change intended. Signed-off-by: Damien Le Moal <dlemoal@kernel.org> --- drivers/scsi/lpfc/lpfc_scsi.c | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-)