scsi: hisi_sas: Fix normally completed I/O analysed as failed
authorXingui Yang <yangxingui@huawei.com>
Tue, 11 Jul 2023 03:14:58 +0000 (11:14 +0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Sun, 23 Jul 2023 19:18:25 +0000 (15:18 -0400)
commitf5393a5602cacfda2014e0ff8220e5a7564e7cd1
tree042286b703c6f8b6217b0510b0ce24a754ca4171
parenta9814b6c23e79ed58aeb432d7f1c556935aeaf8d
scsi: hisi_sas: Fix normally completed I/O analysed as failed

The PIO read command has no response frame and the struct iu[1024] won't be
filled. I/Os which are normally completed will be treated as failed in
sas_ata_task_done() when iu contains abnormal dirty data.

Consequently ending_fis should not be filled by iu when the response frame
hasn't been written to memory.

Fixes: d380f55503ed ("scsi: hisi_sas: Don't bother clearing status buffer IU in task prep")
Signed-off-by: Xingui Yang <yangxingui@huawei.com>
Signed-off-by: Xiang Chen <chenxiang66@hisilicon.com>
Link: https://lore.kernel.org/r/1689045300-44318-2-git-send-email-chenxiang66@hisilicon.com
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c
drivers/scsi/hisi_sas/hisi_sas_v3_hw.c