Fix ramdom errors using first burst Signed-off-by: James Smart <james.smart@xxxxxxxxxx> --- lpfc_scsi.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff -upNr a/drivers/scsi/lpfc/lpfc_scsi.c b/drivers/scsi/lpfc/lpfc_scsi.c --- a/drivers/scsi/lpfc/lpfc_scsi.c 2013-09-04 13:18:04.000000000 -0400 +++ b/drivers/scsi/lpfc/lpfc_scsi.c 2013-09-06 10:04:03.734058299 -0400 @@ -4342,6 +4342,7 @@ lpfc_scsi_prep_cmnd(struct lpfc_vport *v char tag[2]; uint8_t *ptr; bool sli4; + uint32_t fcpdl; if (!pnode || !NLP_CHK_NODE_ACT(pnode)) return; @@ -4389,8 +4390,12 @@ lpfc_scsi_prep_cmnd(struct lpfc_vport *v iocb_cmd->ulpPU = PARM_READ_CHECK; if (vport->cfg_first_burst_size && (pnode->nlp_flag & NLP_FIRSTBURST)) { - piocbq->iocb.un.fcpi.fcpi_XRdy = - vport->cfg_first_burst_size; + fcpdl = scsi_bufflen(scsi_cmnd); + if (fcpdl < vport->cfg_first_burst_size) + piocbq->iocb.un.fcpi.fcpi_XRdy = fcpdl; + else + piocbq->iocb.un.fcpi.fcpi_XRdy = + vport->cfg_first_burst_size; } fcp_cmnd->fcpCntl3 = WRITE_DATA; phba->fc4OutputRequests++; -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html