linux/drivers/scsi/lpfc
Justin Tee 69fa32b4db scsi: lpfc: Fix list_entry null check warning in lpfc_cmpl_els_plogi()
[ Upstream commit 1dec1311b9 ]

Smatch called out a warning for null checking a ptr that is assigned by
list_entry(). list_entry() does not return null and, if the list is empty,
can return an invalid ptr. Thus, the !psrp check does not execute properly.

 drivers/scsi/lpfc/lpfc_els.c:2133 lpfc_cmpl_els_plogi()
 warn: list_entry() does not return NULL 'prsp'

Replace list_entry() with list_get_first(), which does a list_empty() check
before returning the first entry.

Fixes: a3c3c0a806 ("scsi: lpfc: Validate ELS LS_ACC completion payload")
Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Closes: https://lore.kernel.org/linux-scsi/01b7568f-4ab4-4d56-bfa6-9ecc5fc261fe@moroto.mountain/
Signed-off-by: Justin Tee <justin.tee@broadcom.com>
Link: https://lore.kernel.org/r/20231031191224.150862-4-justintee8345@gmail.com
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
History 2024-01-25 15:44:45 -08:00
..
lpfc.h scsi: lpfc: Do not abuse UUID APIs and LPFC_COMPRESS_VMID_SIZE 2023-08-21 17:13:57 -04:00
lpfc_attr.c scsi: lpfc: Clean up SLI-4 sysfs resource reporting 2023-07-23 16:17:08 -04:00
lpfc_attr.h scsi: lpfc: Revise copyright for new company language 2018-07-10 22:15:09 -04:00
lpfc_bsg.c scsi: lpfc: Fix incorrect big endian type assignment in bsg loopback path 2023-06-14 21:57:48 -04:00
lpfc_bsg.h scsi: lpfc: Copyright updates for 14.2.0.5 patches 2022-07-07 17:21:44 -04:00
lpfc_compat.h scsi: lpfc: Revise copyright for new company language 2018-07-10 22:15:09 -04:00
lpfc_crtn.h scsi: lpfc: Replace blk_irq_poll intr handler with threaded IRQ 2023-05-08 07:16:05 -04:00
lpfc_ct.c scsi: lpfc: Make fabric zone discovery more robust when handling unsolicited LOGO 2023-07-23 16:17:07 -04:00
lpfc_debugfs.c scsi: lpfc: Fix the NULL vs IS_ERR() bug for debugfs_create_file() 2023-09-13 20:48:36 -04:00
lpfc_debugfs.h scsi: lpfc: Copyright updates for 14.2.0.6 patches 2022-08-31 23:39:58 -04:00
lpfc_disc.h scsi: lpfc: Fix multiple NVMe remoteport registration calls for the same NPort ID 2022-09-15 22:18:27 -04:00
lpfc_els.c scsi: lpfc: Fix list_entry null check warning in lpfc_cmpl_els_plogi() 2024-01-25 15:44:45 -08:00
lpfc_hbadisc.c Merge patch series "lpfc: Update lpfc to revision 14.2.0.15" 2023-10-13 17:00:47 -04:00
lpfc_hw.h scsi: lpfc: Set Establish Image Pair service parameter only for Target Functions 2023-07-23 16:17:07 -04:00
lpfc_hw4.h scsi: lpfc: Clean up SLI-4 CQE status handling 2023-05-31 18:14:20 -04:00
lpfc_ids.h scsi: lpfc: Copyright updates for 14.2.0.5 patches 2022-07-07 17:21:44 -04:00
lpfc_init.c scsi: lpfc: Use topology_core_id() 2023-10-10 14:38:17 +02:00
lpfc_logmsg.h scsi: lpfc: Introduce LOG_NODE_VERBOSE messaging flag 2023-10-13 16:58:27 -04:00
lpfc_mbox.c scsi: lpfc: Fix double word in comments 2023-02-21 22:00:51 -05:00
lpfc_mem.c scsi: lpfc: Copyright updates for 14.2.0.6 patches 2022-08-31 23:39:58 -04:00
lpfc_nl.h scsi: lpfc: Revise copyright for new company language 2018-07-10 22:15:09 -04:00
lpfc_nportdisc.c scsi: lpfc: Reject received PRLIs with only initiator fcn role for NPIV ports 2023-10-13 16:58:27 -04:00
lpfc_nvme.c Merge patch series "lpfc: Update lpfc to revision 14.2.0.15" 2023-10-13 17:00:47 -04:00
lpfc_nvme.h scsi: lpfc: Copyright updates for 14.2.0.0 patches 2022-03-15 13:51:50 -04:00
lpfc_nvmet.c scsi: lpfc: Refactor cpu affinity assignment paths 2023-07-23 16:17:07 -04:00
lpfc_scsi.c scsi: lpfc: Remove reftag check in DIF paths 2023-08-07 21:34:08 -04:00
lpfc_scsi.h scsi: lpfc: Copyright updates for 14.2.0.6 patches 2022-08-31 23:39:58 -04:00
lpfc_sli.c scsi: lpfc: Remove unnecessary zero return code assignment in lpfc_sli4_hba_setup 2023-10-13 16:58:27 -04:00
lpfc_sli.h scsi: lpfc: Remove Menlo/Hornet related code 2022-07-07 17:21:44 -04:00
lpfc_sli4.h scsi: lpfc: Replace blk_irq_poll intr handler with threaded IRQ 2023-05-08 07:16:05 -04:00
lpfc_version.h scsi: lpfc: Update lpfc version to 14.2.0.15 2023-10-13 16:58:27 -04:00
lpfc_vmid.c scsi: lpfc: Copyright updates for 14.2.0.10 patches 2023-01-12 00:03:15 -05:00
lpfc_vport.c scsi: lpfc: Copyright updates for 14.2.0.10 patches 2023-01-12 00:03:15 -05:00
lpfc_vport.h scsi: lpfc: Copyright updates for 14.2.0.6 patches 2022-08-31 23:39:58 -04:00
Makefile scsi: lpfc: Commonize VMID code location 2022-05-19 20:24:56 -04:00