mirror of https://gitee.com/openkylin/qemu.git
scsi: add a bunch more common sense codes
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
739df2150d
commit
a872a3049a
|
@ -696,6 +696,16 @@ const struct SCSISense sense_code_LUN_NOT_SUPPORTED = {
|
||||||
.key = ILLEGAL_REQUEST, .asc = 0x25, .ascq = 0x00
|
.key = ILLEGAL_REQUEST, .asc = 0x25, .ascq = 0x00
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/* Illegal request, Saving parameters not supported */
|
||||||
|
const struct SCSISense sense_code_SAVING_PARAMS_NOT_SUPPORTED = {
|
||||||
|
.key = ILLEGAL_REQUEST, .asc = 0x39, .ascq = 0x00
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Illegal request, Incompatible medium installed */
|
||||||
|
const struct SCSISense sense_code_INCOMPATIBLE_MEDIUM = {
|
||||||
|
.key = ILLEGAL_REQUEST, .asc = 0x30, .ascq = 0x00
|
||||||
|
};
|
||||||
|
|
||||||
/* Command aborted, I/O process terminated */
|
/* Command aborted, I/O process terminated */
|
||||||
const struct SCSISense sense_code_IO_ERROR = {
|
const struct SCSISense sense_code_IO_ERROR = {
|
||||||
.key = ABORTED_COMMAND, .asc = 0x00, .ascq = 0x06
|
.key = ABORTED_COMMAND, .asc = 0x00, .ascq = 0x06
|
||||||
|
@ -711,6 +721,26 @@ const struct SCSISense sense_code_LUN_FAILURE = {
|
||||||
.key = ABORTED_COMMAND, .asc = 0x3e, .ascq = 0x01
|
.key = ABORTED_COMMAND, .asc = 0x3e, .ascq = 0x01
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/* Unit attention, Power on, reset or bus device reset occurred */
|
||||||
|
const struct SCSISense sense_code_RESET = {
|
||||||
|
.key = UNIT_ATTENTION, .asc = 0x29, .ascq = 0x00
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Unit attention, Medium may have changed */
|
||||||
|
const struct SCSISense sense_code_MEDIUM_CHANGED = {
|
||||||
|
.key = UNIT_ATTENTION, .asc = 0x28, .ascq = 0x00
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Unit attention, Reported LUNs data has changed */
|
||||||
|
const struct SCSISense sense_code_REPORTED_LUNS_CHANGED = {
|
||||||
|
.key = UNIT_ATTENTION, .asc = 0x3f, .ascq = 0x0e
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Unit attention, Device internal reset */
|
||||||
|
const struct SCSISense sense_code_DEVICE_INTERNAL_RESET = {
|
||||||
|
.key = UNIT_ATTENTION, .asc = 0x29, .ascq = 0x04
|
||||||
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* scsi_build_sense
|
* scsi_build_sense
|
||||||
*
|
*
|
||||||
|
|
12
hw/scsi.h
12
hw/scsi.h
|
@ -144,12 +144,24 @@ extern const struct SCSISense sense_code_LBA_OUT_OF_RANGE;
|
||||||
extern const struct SCSISense sense_code_INVALID_FIELD;
|
extern const struct SCSISense sense_code_INVALID_FIELD;
|
||||||
/* Illegal request, LUN not supported */
|
/* Illegal request, LUN not supported */
|
||||||
extern const struct SCSISense sense_code_LUN_NOT_SUPPORTED;
|
extern const struct SCSISense sense_code_LUN_NOT_SUPPORTED;
|
||||||
|
/* Illegal request, Saving parameters not supported */
|
||||||
|
extern const struct SCSISense sense_code_SAVING_PARAMS_NOT_SUPPORTED;
|
||||||
|
/* Illegal request, Incompatible format */
|
||||||
|
extern const struct SCSISense sense_code_INCOMPATIBLE_FORMAT;
|
||||||
/* Command aborted, I/O process terminated */
|
/* Command aborted, I/O process terminated */
|
||||||
extern const struct SCSISense sense_code_IO_ERROR;
|
extern const struct SCSISense sense_code_IO_ERROR;
|
||||||
/* Command aborted, I_T Nexus loss occurred */
|
/* Command aborted, I_T Nexus loss occurred */
|
||||||
extern const struct SCSISense sense_code_I_T_NEXUS_LOSS;
|
extern const struct SCSISense sense_code_I_T_NEXUS_LOSS;
|
||||||
/* Command aborted, Logical Unit failure */
|
/* Command aborted, Logical Unit failure */
|
||||||
extern const struct SCSISense sense_code_LUN_FAILURE;
|
extern const struct SCSISense sense_code_LUN_FAILURE;
|
||||||
|
/* Unit attention, Power on, reset or bus device reset occurred */
|
||||||
|
extern const struct SCSISense sense_code_RESET;
|
||||||
|
/* Unit attention, Medium may have changed*/
|
||||||
|
extern const struct SCSISense sense_code_MEDIUM_CHANGED;
|
||||||
|
/* Unit attention, Reported LUNs data has changed */
|
||||||
|
extern const struct SCSISense sense_code_REPORTED_LUNS_CHANGED;
|
||||||
|
/* Unit attention, Device internal reset */
|
||||||
|
extern const struct SCSISense sense_code_DEVICE_INTERNAL_RESET;
|
||||||
|
|
||||||
#define SENSE_CODE(x) sense_code_ ## x
|
#define SENSE_CODE(x) sense_code_ ## x
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue