summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qedi/qedi_main.c
diff options
context:
space:
mode:
authorMike Christie <michael.christie@oracle.com>2021-05-25 20:18:07 +0200
committerMartin K. Petersen <martin.petersen@oracle.com>2021-06-02 07:28:21 +0200
commitbdd4aad7ff92ae39c2e93c415bb6761cb8b584da (patch)
tree29d89250f8ba8f966d9aed6c5801a1b107a20e7c /drivers/scsi/qedi/qedi_main.c
parentscsi: iscsi: Fix conn use after free during resets (diff)
downloadlinux-bdd4aad7ff92ae39c2e93c415bb6761cb8b584da.tar.xz
linux-bdd4aad7ff92ae39c2e93c415bb6761cb8b584da.zip
scsi: iscsi: Fix shost->max_id use
The iscsi offload drivers are setting the shost->max_id to the max number of sessions they support. The problem is that max_id is not the max number of targets but the highest identifier the targets can have. To use it to limit the number of targets we need to set it to max sessions - 1, or we can end up with a session we might not have preallocated resources for. Link: https://lore.kernel.org/r/20210525181821.7617-15-michael.christie@oracle.com Reviewed-by: Lee Duncan <lduncan@suse.com> Signed-off-by: Mike Christie <michael.christie@oracle.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/qedi/qedi_main.c')
-rw-r--r--drivers/scsi/qedi/qedi_main.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/scsi/qedi/qedi_main.c b/drivers/scsi/qedi/qedi_main.c
index 2455d1448a7e..edf915432704 100644
--- a/drivers/scsi/qedi/qedi_main.c
+++ b/drivers/scsi/qedi/qedi_main.c
@@ -640,7 +640,7 @@ static struct qedi_ctx *qedi_host_alloc(struct pci_dev *pdev)
goto exit_setup_shost;
}
- shost->max_id = QEDI_MAX_ISCSI_CONNS_PER_HBA;
+ shost->max_id = QEDI_MAX_ISCSI_CONNS_PER_HBA - 1;
shost->max_channel = 0;
shost->max_lun = ~0;
shost->max_cmd_len = 16;