Skip to contentSkip to conversation

SCSI fixes for 5.1-rc4

GIT PULL Merged James Bottomley 2 participants 2 messages Apr 13, 2019 SCSI

lore
Share & tools
lore

James Bottomley

author maintainer
#0 lore raw

One obvious fix for a ciostor data corruption on error bug.

The patch is available here:

git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi.git scsi-fixes

The short changelog is:

Varun Prakash (1):
scsi: csiostor: fix missing data copy in csio_scsi_err_handler()

And the diffstat:

 drivers/scsi/csiostor/csio_scsi.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

With full diff below.

James

---

drivers/scsi/csiostor/csio_scsi.c +4 -1
index 462560b2855e..469d0bc9f5fe 100644
@@ -1713,8 +1713,11 @@ csio_scsi_err_handler(struct csio_hw *hw, struct csio_ioreq *req)
 	}
 
 out:
-	if (req->nsge > 0)
+	if (req->nsge > 0) {
 		scsi_dma_unmap(cmnd);
+		if (req->dcopy && (host_status == DID_OK))
+			host_status = csio_scsi_copy_to_sgl(hw, req);
+	}
 
 	cmnd->result = (((host_status) << 16) | scsi_status);
 	cmnd->scsi_done(cmnd);