Received: by 2002:ac0:950c:0:0:0:0:0 with SMTP id f12csp2311731imc; Tue, 12 Mar 2019 11:08:28 -0700 (PDT) X-Google-Smtp-Source: APXvYqyxw1Vnxb5D9wSSUkciNd5FeF5//ezXi2XTnZgLm+kbnqSTdKtoVgSduimMO/G7uSEG+0+B X-Received: by 2002:a63:d706:: with SMTP id d6mr23491051pgg.367.1552414108596; Tue, 12 Mar 2019 11:08:28 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1552414108; cv=none; d=google.com; s=arc-20160816; b=jmv2gScdhyP3VlQP3qAJNHUOJMKbnwY0Eek2oL9DQndD97ACsgFjwNQzWB6RZEgkA3 GcLAyexUl+XjXZdyDnp8gxqnwAeLq4eOiL8mLmTK6H8hSrYmwAb8Go/zG7YXwYWlVpHc 10TK+9lK5FolOyU2cMujS0tYuJEgujdc4AN6j9vyEMDOmTmRBKDVJTAyiQVQNmwFZROV DYh4O6qgDxJf7VoUfaN1knK7whoLu10o757gDmZvjg0h/aAO2QctlxnvDUUArhE1pdq1 tjuYJpW0b5sDQaSrhIny0c943IkC7EY/Ks4Ek6P4pYH6qSd6I+MlrTE7pQmXkTFzh3qi Xmzw== 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=OzboqiSTMWfczhN+KnqMk8T+oRnRIBPrQY+PEkc7yOw=; b=Ox0SIh9M02PCySdXMn0weh+2aXiU+q6apXbhTTk7/5sPwRiSTJfdE+3AMjcLJV2G6V +Ce4TKHCWlDVaz0hL9F30YRUq3RdE0Gl3vUuig/z6/QvIOpjUjyROGrdDv/njZhvgVqj tbdWnbVJcRQ9CW68lsjkVHwmtlXrXCU9p+ea5Pj3aPgOx1ywBaPn2iRUJwrXaMkbnVA6 ZEc05OwB6EkV0lMedXJucFpfeejShqry7ATmH2Z+PL+Pgx30XAItd848+sdyYLd3VmOK QKTqhg29ikNpXI586XUkC/TzXm8qkih+uMSjcV6B01YXYLFxkP7ypuyckb2isQkA5Dp7 LMOA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=NSTMLyDU; 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 94si8513722plc.298.2019.03.12.11.08.10; Tue, 12 Mar 2019 11:08:28 -0700 (PDT) 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=NSTMLyDU; 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 S1727451AbfCLRMZ (ORCPT + 99 others); Tue, 12 Mar 2019 13:12:25 -0400 Received: from mail.kernel.org ([198.145.29.99]:46682 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727300AbfCLRMI (ORCPT ); Tue, 12 Mar 2019 13:12:08 -0400 Received: from localhost (unknown [104.133.8.98]) (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 776DD214AE; Tue, 12 Mar 2019 17:12:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1552410727; bh=T96Ak25YlQX20ZxWfLoQbeiedtA0I3hpgxDzbEt7x3w=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=NSTMLyDUU3TP2u18toFMrxMHGgp8fzirgtH6DsF3VVlkiSWpTPG00OgV39Sc52TtF KscMI3oNZOiCF2y7tmcHMVW6L/7N4sqN6ElQBdsaJ3q1V97ooJbTo5LdRC+oqN9Jec BVs80S0Al2SdrywYZOFvwN0VPy9Cp6hFoaT8MNR4= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Ming Lu , Hannes Reinecke , "Martin K. Petersen" , Sasha Levin Subject: [PATCH 4.20 046/171] scsi: libfc: free skb when receiving invalid flogi resp Date: Tue, 12 Mar 2019 10:07:06 -0700 Message-Id: <20190312170352.106796322@linuxfoundation.org> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190312170347.868927101@linuxfoundation.org> References: <20190312170347.868927101@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review X-Patchwork-Hint: ignore 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 4.20-stable review patch. If anyone has any objections, please let me know. ------------------ [ Upstream commit 5d8fc4a9f0eec20b6c07895022a6bea3fb6dfb38 ] The issue to be fixed in this commit is when libfc found it received a invalid FLOGI response from FC switch, it would return without freeing the fc frame, which is just the skb data. This would cause memory leak if FC switch keeps sending invalid FLOGI responses. This fix is just to make it execute `fc_frame_free(fp)` before returning from function `fc_lport_flogi_resp`. Signed-off-by: Ming Lu Reviewed-by: Hannes Reinecke Signed-off-by: Martin K. Petersen Signed-off-by: Sasha Levin --- drivers/scsi/libfc/fc_lport.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/scsi/libfc/fc_lport.c b/drivers/scsi/libfc/fc_lport.c index be83590ed955..ff943f477d6f 100644 --- a/drivers/scsi/libfc/fc_lport.c +++ b/drivers/scsi/libfc/fc_lport.c @@ -1726,14 +1726,14 @@ void fc_lport_flogi_resp(struct fc_seq *sp, struct fc_frame *fp, fc_frame_payload_op(fp) != ELS_LS_ACC) { FC_LPORT_DBG(lport, "FLOGI not accepted or bad response\n"); fc_lport_error(lport, fp); - goto err; + goto out; } flp = fc_frame_payload_get(fp, sizeof(*flp)); if (!flp) { FC_LPORT_DBG(lport, "FLOGI bad response\n"); fc_lport_error(lport, fp); - goto err; + goto out; } mfs = ntohs(flp->fl_csp.sp_bb_data) & @@ -1743,7 +1743,7 @@ void fc_lport_flogi_resp(struct fc_seq *sp, struct fc_frame *fp, FC_LPORT_DBG(lport, "FLOGI bad mfs:%hu response, " "lport->mfs:%hu\n", mfs, lport->mfs); fc_lport_error(lport, fp); - goto err; + goto out; } if (mfs <= lport->mfs) { -- 2.19.1