scsi: csiostor: fix missing data copy in csio_scsi_err_handler()

If scsi cmd sglist is not suitable for DDP then csiostor driver uses
preallocated buffers for DDP, because of this data copy is required from
DDP buffer to scsi cmd sglist before calling ->scsi_done().

Signed-off-by: Varun Prakash <varun@chelsio.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

authored by Varun Prakash and committed by Martin K. Petersen 5c2442fd 4eb01535

Changed files
+4 -1
drivers
scsi
csiostor
+4 -1
drivers/scsi/csiostor/csio_scsi.c
··· 1713 1713 } 1714 1714 1715 1715 out: 1716 - if (req->nsge > 0) 1716 + if (req->nsge > 0) { 1717 1717 scsi_dma_unmap(cmnd); 1718 + if (req->dcopy && (host_status == DID_OK)) 1719 + host_status = csio_scsi_copy_to_sgl(hw, req); 1720 + } 1718 1721 1719 1722 cmnd->result = (((host_status) << 16) | scsi_status); 1720 1723 cmnd->scsi_done(cmnd);