scsi: core: Clean up scsi_proto.h

Now that all users of SCSI sense codes have been modified to use macro
definitions and the 16-bit sense code instead of separate 8-bit ASC and
ASCQ, remove the now unused asc and ascq fields of struct scsi_failure and
struct scsi_sense_hdr, and the old (and incomplete) definitions of SCSI
additional sense codes and sense code qualifiers in scsi_proto.h.

Signed-off-by: Damien Le Moal <dlemoal@kernel.org>
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Reviewed-by: Hannes Reinecke <hare@kernel.org>
Link: https://patch.msgid.link/20260908090308.1085097-40-dlemoal@kernel.org
Signed-off-by: Martin K. Petersen (Oracle) <mkp@kernel.org>
This commit is contained in:
Damien Le Moal 2026-09-08 18:03:07 +09:00 committed by Martin K. Petersen (Oracle)
parent 3f37a1a804
commit ddfb3e0257
3 changed files with 2 additions and 75 deletions

View File

@ -71,18 +71,7 @@ extern u64 scsilun_to_int(struct scsi_lun *);
struct scsi_sense_hdr { /* See SPC-3 section 4.5 */
u8 response_code; /* permit: 0x0, 0x70, 0x71, 0x72, 0x73 */
u8 sense_key;
union {
struct {
#if defined(__BIG_ENDIAN)
u8 asc;
u8 ascq;
#elif defined(__LITTLE_ENDIAN)
u8 ascq;
u8 asc;
#endif
};
u16 sense_code;
};
u16 sense_code;
u8 byte4;
u8 byte5;
u8 byte6;

View File

@ -527,18 +527,7 @@ extern void scsi_sanitize_inquiry_string(unsigned char *s, int len);
struct scsi_failure {
int result;
u8 sense_key;
union {
struct {
#if defined(__BIG_ENDIAN)
u8 asc;
u8 ascq;
#elif defined(__LITTLE_ENDIAN)
u8 ascq;
u8 asc;
#endif
};
u16 sense_code;
};
u16 sense_code;
/*
* Number of times scsi_execute_cmd will retry the failure. It does
* not count for the total_allowed.

View File

@ -219,57 +219,6 @@ enum sam_status {
#define STATUS_MASK 0xfe
/*
* Additional Sense Codes (ASC).
*/
#define NO_ADDITIONAL_SENSE 0x00
#define OVERLAP_ATOMIC_COMMAND_ASC 0x00
#define LOGICAL_UNIT_NOT_READY 0x04
#define LOGICAL_UNIT_COMMUNICATION_FAILURE 0x8
#define WRITE_ERROR_ASC 0x0c
#define UNRECOVERED_READ_ERR 0x11
#define PARAMETER_LIST_LENGTH_ERR 0x1a
#define MISCOMPARE_VERIFY_ASC 0x1d
#define INVALID_OPCODE 0x20
#define LBA_OUT_OF_RANGE 0x21
#define INVALID_FIELD_IN_CDB 0x24
#define INVALID_FIELD_IN_PARAM_LIST 0x26
#define WRITE_PROTECTED 0x27
#define UA_READY_ASC 0x28
#define UA_RESET_ASC 0x29
#define UA_CHANGED_ASC 0x2a
#define TOO_MANY_IN_PARTITION_ASC 0x3b
#define TARGET_CHANGED_ASC 0x3f
#define SAVING_PARAMS_UNSUP 0x39
#define TRANSPORT_PROBLEM 0x4b
#define INSUFF_RES_ASC 0x55
#define LOW_POWER_COND_ON 0x5e
#define THRESHOLD_EXCEEDED 0x5d
/*
* Additional Sense Code Qualifiers (ASCQ).
*/
#define POWER_ON_RESET_ASCQ 0x00
#define MODE_CHANGED_ASCQ 0x01 /* mode parameters changed */
#define FILEMARK_DETECTED_ASCQ 0x01
#define POWER_ON_OCCURRED_ASCQ 0x01
#define MICROCODE_CHANGED_ASCQ 0x01 /* with TARGET_CHANGED_ASC */
#define BUS_RESET_ASCQ 0x02 /* scsi bus reset occurred */
#define EOP_EOM_DETECTED_ASCQ 0x02
#define INSUFF_RES_ASCQ 0x03
#define BEGINNING_OF_P_M_DETECTED_ASCQ 0x04
#define UNALIGNED_WRITE_ASCQ 0x04
#define EOD_DETECTED_ASCQ 0x05
#define WRITE_BOUNDARY_ASCQ 0x05
#define READ_INVDATA_ASCQ 0x06
#define READ_BOUNDARY_ASCQ 0x07
#define CAPACITY_CHANGED_ASCQ 0x09
#define ATTEMPT_ACCESS_GAP 0x09
#define LUNS_CHANGED_ASCQ 0x0e
#define INSUFF_ZONE_ASCQ 0x0e
#define MICROCODE_CHANGED_WO_RESET_ASCQ 0x16
#define OVERLAP_ATOMIC_COMMAND_ASCQ 0x23
/*
* DEVICE TYPES
* Please keep them in 0x%02x format for $MODALIAS to work