summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorIgor Pylypiv <ipylypiv@google.com>2021-11-01 16:28:24 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-01-27 11:04:05 +0100
commita0b4447677ddf293ba2d85960cbfc2cfff75c283 (patch)
tree4c9ad8afca8afe79ca15c033b7b82a9c5796afa4 /drivers
parent4a1723367f5e632cf0b40f134bd3cd8aea9d26a8 (diff)
scsi: pm80xx: Update WARN_ON check in pm8001_mpi_build_cmd()
[ Upstream commit 606c54ae975ad3af540b505b46b55a687501711f ] Starting from commit 05c6c029a44d ("scsi: pm80xx: Increase number of supported queues") driver initializes only max_q_num queues. Do not use an invalid queue if the WARN_ON condition is true. Link: https://lore.kernel.org/r/20211101232825.2350233-4-ipylypiv@google.com Fixes: 7640e1eb8c5d ("scsi: pm80xx: Make mpi_build_cmd locking consistent") Reviewed-by: Vishakha Channapattan <vishakhavc@google.com> Acked-by: Jack Wang <jinpu.wang@ionos.com> Signed-off-by: Igor Pylypiv <ipylypiv@google.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/scsi/pm8001/pm8001_hwi.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/scsi/pm8001/pm8001_hwi.c b/drivers/scsi/pm8001/pm8001_hwi.c
index 639b7e38a194..880e1f356def 100644
--- a/drivers/scsi/pm8001/pm8001_hwi.c
+++ b/drivers/scsi/pm8001/pm8001_hwi.c
@@ -1325,7 +1325,9 @@ int pm8001_mpi_build_cmd(struct pm8001_hba_info *pm8001_ha,
int q_index = circularQ - pm8001_ha->inbnd_q_tbl;
int rv;
- WARN_ON(q_index >= PM8001_MAX_INB_NUM);
+ if (WARN_ON(q_index >= pm8001_ha->max_q_num))
+ return -EINVAL;
+
spin_lock_irqsave(&circularQ->iq_lock, flags);
rv = pm8001_mpi_msg_free_get(circularQ, pm8001_ha->iomb_size,
&pMessage);