The message byte can take only two values, COMMAND_COMPLETE and ABORT. So we can easily map ABORT to DID_ABORT and do not set the message byte. Signed-off-by: Hannes Reinecke <hare@xxxxxxx> --- drivers/scsi/NCR5380.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/scsi/NCR5380.c b/drivers/scsi/NCR5380.c index d7594b794d3c..a74674941e7d 100644 --- a/drivers/scsi/NCR5380.c +++ b/drivers/scsi/NCR5380.c @@ -1815,6 +1815,8 @@ static void NCR5380_information_transfer(struct Scsi_Host *instance) switch (tmp) { case ABORT: + set_host_byte(cmd, DID_ABORT); + /* fallthrough */ case COMMAND_COMPLETE: /* Accept message by clearing ACK */ sink = 1; @@ -1826,9 +1828,7 @@ static void NCR5380_information_transfer(struct Scsi_Host *instance) hostdata->connected = NULL; hostdata->busy[scmd_id(cmd)] &= ~(1 << cmd->device->lun); - cmd->result &= ~0xffff; - cmd->result |= cmd->SCp.Status; - cmd->result |= cmd->SCp.Message << 8; + set_status_byte(cmd, cmd->SCp.Status); set_resid_from_SCp(cmd); -- 2.29.2