From patchwork Wed Aug 2 23:36:32 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Smart X-Patchwork-Id: 9877921 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 9BBD060360 for ; Wed, 2 Aug 2017 23:37:59 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 8E3822878E for ; Wed, 2 Aug 2017 23:37:59 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 8352428842; Wed, 2 Aug 2017 23:37:59 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.5 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, FREEMAIL_FROM, RCVD_IN_DNSWL_HI, RCVD_IN_SORBS_SPAM autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 41BA42878E for ; Wed, 2 Aug 2017 23:37:59 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751963AbdHBXh6 (ORCPT ); Wed, 2 Aug 2017 19:37:58 -0400 Received: from mail-qt0-f196.google.com ([209.85.216.196]:37508 "EHLO mail-qt0-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751959AbdHBXh5 (ORCPT ); Wed, 2 Aug 2017 19:37:57 -0400 Received: by mail-qt0-f196.google.com with SMTP id d10so6133206qtb.4 for ; Wed, 02 Aug 2017 16:37:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=fzgNDodcF4IIjux9AIxcGLL3ico+Dtw3XC3J/vmemMA=; b=SuNcL289wt44V6pnfU3slEQvjunk7iyVqNO36y15kOTGyCSyafGcsekCo88oV+XvFi dCJBRVHhfuie7KdbG3ZESDrTTGLkxqQJ1DXiIkgSyUhR98WnOSHsHAz6JSye9gqpxP7W FY08p9tME00L6ws3BbwKJ3tk0YGMgNWxKQTfysNTicO87tmVqX/bAce3ITQ0DKoCf7rk zusngzeMvPrPsufbdbUYyJO5RCBY69KqRFyE3qo+pZd9f1Y+iP8juZjXbh/osSdqk6ha RqXYpaNidI6X9AWy0hdVQdmlY4qKPKou6hl/kAB47gy/alrQLFsFjhqk8N1rwA+7PEJJ vI4Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=fzgNDodcF4IIjux9AIxcGLL3ico+Dtw3XC3J/vmemMA=; b=Q5GEwlLUvXtplov5nSxPDuwtWHGvCZMkrLSqG1GpXRNHZ7o12EqBWEHccGTByWiD98 Ba+2r4bnosm0Upa6fKVwJ0mg+yRai6nwpRMRulNdX7X1uOt+DUAhZyTbCPE4YgKN/mFl MsTqnN6pyuZjwEnG92SmciSnRGRiUjKaDosxPPeaAeEXwvh9oZbP4SduKfq41m/9aVau DXSd556GRmBNzv438OJNHE4TjZNQmFWvbwczXZXhVYW9jfND6lsLdqc7n4uHomLYVlGY +y8K/Ph0Z2DlXHdIIc71i2s1ypMJ0PKgORCgT5xdmO92V0/gAtzXU5/HJeon+JbASW5/ n0bw== X-Gm-Message-State: AIVw113VAIXDLTMlartgKu8PAr1JHvKGl0du2LxRk7n3A8Qd5UhDRFsU 17MSlohW9vpN8Jxe X-Received: by 10.200.39.46 with SMTP id g43mr15442714qtg.293.1501717076765; Wed, 02 Aug 2017 16:37:56 -0700 (PDT) Received: from pallmd1.broadcom.com ([192.19.255.250]) by smtp.gmail.com with ESMTPSA id c55sm26260318qta.8.2017.08.02.16.37.55 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 02 Aug 2017 16:37:55 -0700 (PDT) From: James Smart To: linux-scsi@vger.kernel.org Cc: Dick Kennedy , James Smart Subject: [PATCH 05/21] lpfc: Fix oops when NVME Target is discovered in a nonNVME environment Date: Wed, 2 Aug 2017 16:36:32 -0700 Message-Id: <20170802233648.4573-6-jsmart2021@gmail.com> X-Mailer: git-send-email 2.13.1 In-Reply-To: <20170802233648.4573-1-jsmart2021@gmail.com> References: <20170802233648.4573-1-jsmart2021@gmail.com> Sender: linux-scsi-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-scsi@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Dick Kennedy lpfc oops when it discovers a NVME target but is configured for SCSI only operation. Oops is in lpfc_nvme_register_port+0x33/0x300. The localport is not valid so it should not have been referenced. Added validity check for localport Signed-off-by: Dick Kennedy Signed-off-by: James Smart --- drivers/scsi/lpfc/lpfc_nvme.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/scsi/lpfc/lpfc_nvme.c b/drivers/scsi/lpfc/lpfc_nvme.c index 0a0a1b92d01d..2f50df6a3dca 100644 --- a/drivers/scsi/lpfc/lpfc_nvme.c +++ b/drivers/scsi/lpfc/lpfc_nvme.c @@ -2296,6 +2296,9 @@ lpfc_nvme_register_port(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp) ndlp->nlp_DID, ndlp->nlp_type); localport = vport->localport; + if (!localport) + return 0; + lport = (struct lpfc_nvme_lport *)localport->private; /* NVME rports are not preserved across devloss.