Received: by 2002:a17:90a:9103:0:0:0:0 with SMTP id k3csp11804184pjo; Thu, 2 Jan 2020 14:34:04 -0800 (PST) X-Google-Smtp-Source: APXvYqwj+Z9u+jYphXI07sq4+NEDqhM61hbaEgTn089515Ql/eX7ioGarVxN+w3mOXwO5iX5Z5k4 X-Received: by 2002:a9d:774e:: with SMTP id t14mr92788996otl.358.1578004444025; Thu, 02 Jan 2020 14:34:04 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1578004444; cv=none; d=google.com; s=arc-20160816; b=gb8Buzt9KmbTU9nARDhGJTqtaS8uw2cOuGR3Oiyobv/qjUP8raZEHHF6pQVvW1J6PQ k+LXMnnKq+Nsr1rrP4RouIkRn3Soq5HgsauCkO5/FpgbxOpHvOZTL9s5gp8Z8KhUS7df unKV6wrq4rVtLV6BS815Rdb7gHyYGYZ7Qo2TzDTMcsdvFTfJ/wnSx2jPUlQWhaNzurxY /fdoIb5K0Ur9XVtL1pmh8T+dpcPcIOTgnGsU2FeyfnbrRT83uiKVcAbfvpnWig9ISgz5 tb5dSdOdedxr70lLDB43SHnBzxpndnYGUTt1fbKbHA7h/s4zwRz6MAI3RTPLAqt0zvmd xwsg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=W9cIt7YOI+2qGwMPlli7BKayI72n9Ba+oV/6R3yZT/g=; b=B253HjftAJisJeEsdHwXgmccnvX2D1loU9yCMqEf5CGaVcVZoQef6bLHSIuuwj/UOO p4iGIjvnaduMoJrYPlZfKcH8OTihrz+ceUgYI9/yd6rnDJWryW3Sg7t/7mOS+xXn+TLv DcMLROR9w5Q/LwdoSlqAsLxHKGNPEsRpXB7EyZlUHHb75OJRkuSMDbXzW5/d3/01am0c G2rkZv+tsInUV0TdzF6MkePcdBRwD7sJ1axSF2InwSn9Odzjqqy41pORLsd4BP9jQD6k MFOSo6mrMJZU13vZlpWp4uJXd9b6kz29v/jTs9J6mBb1FzGPMrRvp5s6lDTW4/nwPc/E J6sg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=KHCmc2hL; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id p21si32994651otr.58.2020.01.02.14.33.51; Thu, 02 Jan 2020 14:34:04 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=KHCmc2hL; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730515AbgABWdM (ORCPT + 99 others); Thu, 2 Jan 2020 17:33:12 -0500 Received: from mail.kernel.org ([198.145.29.99]:40250 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730500AbgABWdI (ORCPT ); Thu, 2 Jan 2020 17:33:08 -0500 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 441C220863; Thu, 2 Jan 2020 22:33:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1578004387; bh=pDIoxPnNc49mPiHcOKPF/QNCiTxhOpcIMCCWMSRQfJA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=KHCmc2hLI0eZPnkrcsonzCgnMCO3y7n7BG7hqIZNLiH4Eg5Rm2Xt5N1di4ds1+JLM f2lu/L3oS9xQtoD7r64rrCR4C/JVu7MRPbOCKA9t4gvF56HsaciZMYwlwvjDV+gBdM FK0p+bk2T6YqIk8k6iyFw8Mo/0o2vbc5xki5m5Vo= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, coverity-bot , James Bottomley , "Gustavo A. R. Silva" , linux-next@vger.kernel.org, "Ewan D . Milne" , Dick Kennedy , James Smart , "Martin K . Petersen" , Sasha Levin Subject: [PATCH 4.9 132/171] scsi: lpfc: fix: Coverity: lpfc_cmpl_els_rsp(): Null pointer dereferences Date: Thu, 2 Jan 2020 23:07:43 +0100 Message-Id: <20200102220605.372228510@linuxfoundation.org> X-Mailer: git-send-email 2.24.1 In-Reply-To: <20200102220546.960200039@linuxfoundation.org> References: <20200102220546.960200039@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: James Smart [ Upstream commit 6c6d59e0fe5b86cf273d6d744a6a9768c4ecc756 ] Coverity reported the following: *** CID 101747: Null pointer dereferences (FORWARD_NULL) /drivers/scsi/lpfc/lpfc_els.c: 4439 in lpfc_cmpl_els_rsp() 4433 kfree(mp); 4434 } 4435 mempool_free(mbox, phba->mbox_mem_pool); 4436 } 4437 out: 4438 if (ndlp && NLP_CHK_NODE_ACT(ndlp)) { vvv CID 101747: Null pointer dereferences (FORWARD_NULL) vvv Dereferencing null pointer "shost". 4439 spin_lock_irq(shost->host_lock); 4440 ndlp->nlp_flag &= ~(NLP_ACC_REGLOGIN | NLP_RM_DFLT_RPI); 4441 spin_unlock_irq(shost->host_lock); 4442 4443 /* If the node is not being used by another discovery thread, 4444 * and we are sending a reject, we are done with it. Fix by adding a check for non-null shost in line 4438. The scenario when shost is set to null is when ndlp is null. As such, the ndlp check present was sufficient. But better safe than sorry so add the shost check. Reported-by: coverity-bot Addresses-Coverity-ID: 101747 ("Null pointer dereferences") Fixes: 2e0fef85e098 ("[SCSI] lpfc: NPIV: split ports") CC: James Bottomley CC: "Gustavo A. R. Silva" CC: linux-next@vger.kernel.org Link: https://lore.kernel.org/r/20191111230401.12958-3-jsmart2021@gmail.com Reviewed-by: Ewan D. Milne Signed-off-by: Dick Kennedy Signed-off-by: James Smart Signed-off-by: Martin K. Petersen Signed-off-by: Sasha Levin --- drivers/scsi/lpfc/lpfc_els.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/scsi/lpfc/lpfc_els.c b/drivers/scsi/lpfc/lpfc_els.c index 3702497b5b16..4901bf24916b 100644 --- a/drivers/scsi/lpfc/lpfc_els.c +++ b/drivers/scsi/lpfc/lpfc_els.c @@ -3863,7 +3863,7 @@ lpfc_cmpl_els_rsp(struct lpfc_hba *phba, struct lpfc_iocbq *cmdiocb, mempool_free(mbox, phba->mbox_mem_pool); } out: - if (ndlp && NLP_CHK_NODE_ACT(ndlp)) { + if (ndlp && NLP_CHK_NODE_ACT(ndlp) && shost) { spin_lock_irq(shost->host_lock); ndlp->nlp_flag &= ~(NLP_ACC_REGLOGIN | NLP_RM_DFLT_RPI); spin_unlock_irq(shost->host_lock); -- 2.20.1