[SCSI] convert SPI transport class to scsi_execute
This one's slightly more difficult. The transport class uses REQ_FAILFAST, so another interface (scsi_execute) had to be invented to take the extra flag. Also, the sense functions are shifted around to allow spi_execute to place data directly into a struct scsi_sense_hdr. With this change, there's probably a lot of unnecessary sense buffer allocation going on which we can fix later. Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
This commit is contained in:
@ -1847,12 +1847,16 @@ EXPORT_SYMBOL(scsi_reset_provider);
|
||||
int scsi_normalize_sense(const u8 *sense_buffer, int sb_len,
|
||||
struct scsi_sense_hdr *sshdr)
|
||||
{
|
||||
if (!sense_buffer || !sb_len || (sense_buffer[0] & 0x70) != 0x70)
|
||||
if (!sense_buffer || !sb_len)
|
||||
return 0;
|
||||
|
||||
memset(sshdr, 0, sizeof(struct scsi_sense_hdr));
|
||||
|
||||
sshdr->response_code = (sense_buffer[0] & 0x7f);
|
||||
|
||||
if (!scsi_sense_valid(sshdr))
|
||||
return 0;
|
||||
|
||||
if (sshdr->response_code >= 0x72) {
|
||||
/*
|
||||
* descriptor format
|
||||
|
Reference in New Issue
Block a user