scsi: pm80xx: corrected SATA abort handling sequence.
Modified SATA abort handling with following steps: 1) Set device state as recovery. 2) Send phy reset. 3) Wait for reset completion. 4) After successful reset, abort all IO's to the device. 5) After aborting all IO's to device, set device state as operational. Signed-off-by: Deepak Ukey <deepak.ukey@microsemi.com> Signed-off-by: Viswas G <Viswas.G@microsemi.com> Acked-by: Jack Wang <jinpu.wang@profitbricks.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:

committed by
Martin K. Petersen

parent
61daffdeaa
commit
869ddbdcae
@@ -3209,10 +3209,16 @@ int pm8001_mpi_local_phy_ctl(struct pm8001_hba_info *pm8001_ha, void *piomb)
|
||||
PM8001_MSG_DBG(pm8001_ha,
|
||||
pm8001_printk("%x phy execute %x phy op failed!\n",
|
||||
phy_id, phy_op));
|
||||
} else
|
||||
} else {
|
||||
PM8001_MSG_DBG(pm8001_ha,
|
||||
pm8001_printk("%x phy execute %x phy op success!\n",
|
||||
phy_id, phy_op));
|
||||
pm8001_ha->phy[phy_id].reset_success = true;
|
||||
}
|
||||
if (pm8001_ha->phy[phy_id].enable_completion) {
|
||||
complete(pm8001_ha->phy[phy_id].enable_completion);
|
||||
pm8001_ha->phy[phy_id].enable_completion = NULL;
|
||||
}
|
||||
pm8001_tag_free(pm8001_ha, tag);
|
||||
return 0;
|
||||
}
|
||||
|
Reference in New Issue
Block a user