mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-26 23:20:58 +07:00
scsi: aacraid: Added support for read medium error
This patch processes Raw IO read medium errors. Signed-off-by: Raghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: Dave Carroll <David.Carroll@microsemi.com> Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
parent
3ffd6c5a74
commit
f956a669bf
@ -62,6 +62,7 @@
|
||||
#define SENCODE_END_OF_DATA 0x00
|
||||
#define SENCODE_BECOMING_READY 0x04
|
||||
#define SENCODE_INIT_CMD_REQUIRED 0x04
|
||||
#define SENCODE_UNRECOVERED_READ_ERROR 0x11
|
||||
#define SENCODE_PARAM_LIST_LENGTH_ERROR 0x1A
|
||||
#define SENCODE_INVALID_COMMAND 0x20
|
||||
#define SENCODE_LBA_OUT_OF_RANGE 0x21
|
||||
@ -1997,6 +1998,15 @@ static void io_callback(void *context, struct fib * fibptr)
|
||||
min_t(size_t, sizeof(dev->fsa_dev[cid].sense_data),
|
||||
SCSI_SENSE_BUFFERSIZE));
|
||||
break;
|
||||
case ST_MEDERR:
|
||||
scsicmd->result = DID_OK << 16 | COMMAND_COMPLETE << 8 |
|
||||
SAM_STAT_CHECK_CONDITION;
|
||||
set_sense(&dev->fsa_dev[cid].sense_data, MEDIUM_ERROR,
|
||||
SENCODE_UNRECOVERED_READ_ERROR, ASENCODE_NO_SENSE, 0, 0);
|
||||
memcpy(scsicmd->sense_buffer, &dev->fsa_dev[cid].sense_data,
|
||||
min_t(size_t, sizeof(dev->fsa_dev[cid].sense_data),
|
||||
SCSI_SENSE_BUFFERSIZE));
|
||||
break;
|
||||
default:
|
||||
#ifdef AAC_DETAILED_STATUS_INFO
|
||||
printk(KERN_WARNING "io_callback: io failed, status = %d\n",
|
||||
|
@ -1462,6 +1462,7 @@ struct aac_dev
|
||||
#define ST_IO 5
|
||||
#define ST_NXIO 6
|
||||
#define ST_E2BIG 7
|
||||
#define ST_MEDERR 8
|
||||
#define ST_ACCES 13
|
||||
#define ST_EXIST 17
|
||||
#define ST_XDEV 18
|
||||
|
Loading…
Reference in New Issue
Block a user