Skip to contentSkip to conversation

lpfc: Add support for ELS LCB.

DISCUSSION Dan Carpenter 1 participant 1 message Jun 10, 2015 SCSI

lore
Share & tools
lore
#0 lore raw

Hello James Smart,

The patch 8b017a30a313: "lpfc: Add support for ELS LCB." from May 21, 2015, leads to the following static checker warning:

	drivers/scsi/lpfc/lpfc_els.c:5243 lpfc_els_rcv_lcb()
	error: potential null dereference 'lcb_context'.  (kmalloc returns null)

drivers/scsi/lpfc/lpfc_els.c
5205 if (phba->sli_rev < LPFC_SLI_REV4 ||
5206 (bf_get(lpfc_sli_intf_if_type, &phba->sli4_hba.sli_intf) !=
5207 LPFC_SLI_INTF_IF_TYPE_2)) {
5208 rjt_err = LSRJT_CMD_UNSUPPORTED;
5209 goto rjt;
5210 }

  5211          lcb_context = kmalloc(sizeof(struct lpfc_lcb_context), GFP_KERNEL);
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

No check for allocation failure.

  5212  
  5213          if (phba->hba_flag & HBA_FCOE_MODE) {
  5214                  rjt_err = LSRJT_CMD_UNSUPPORTED;
  5215                  goto rjt;
  5216          }
  5217          if (beacon->lcb_frequency == 0) {
  5218                  rjt_err = LSRJT_CMD_UNSUPPORTED;
  5219                  goto rjt;
  5220          }
  5221          if ((beacon->lcb_type != LPFC_LCB_GREEN) &&
  5222              (beacon->lcb_type != LPFC_LCB_AMBER)) {

Also:

	drivers/scsi/lpfc/lpfc_els.c:5261 lpfc_els_rcv_lcb()
	warn: possible memory leak of 'lcb_context'

regards,
dan carpenter