Received: by 2002:a5b:505:0:0:0:0:0 with SMTP id o5csp3391531ybp; Sun, 6 Oct 2019 10:55:03 -0700 (PDT) X-Google-Smtp-Source: APXvYqwk/EWiNOoWt3Glbbm05ZURl6fkRdc6NYsE8JFVsPLKjrEtygjta2TFx59Ki82T6nTVSzhb X-Received: by 2002:a17:906:2a86:: with SMTP id l6mr7838957eje.120.1570384503652; Sun, 06 Oct 2019 10:55:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1570384503; cv=none; d=google.com; s=arc-20160816; b=latACPzfvo30V/wBej4imZQNWl7AcFYeP1LqUhhl8DTJ7uBt3q2bGRXZW/N2rDUHQw tAATrA8KnkRQ3T90UQqnRnlxJOZLPMFCRoyjtZFsD14z11eo0g05X0yxyOB/fWWF1doj ezNovbwrp4dJ28xjjzdVCEY/MX+a+mtm9DZPSnoO/Dg3blwH+OTWhUqXguoNkwaob7Xf kLXu2LBgGVZeWKGK+w4dM3jPTtb+YqwdhFTzXd1hQQ5QVOqaZDovRHsx8918g+NnZl1T Rsl8YR87ADpqZisbgetQeURrmC9pu/xgp6MxVstiOtKMbtn+fralfUoxrBXuraQHZnQP zNZQ== 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=axyoi5xLXVHGyRmy4SkWOh0jqB6vBaffYoUI//0eyYs=; b=KEA492PxKgpZsJpYomAFtlCMP0OJk8u81yR6EuA5utb14BYRdU4K4y6UM6MZ4XJlpJ Qw5cv6SNsBEDLXB0e0hLlnrOTWd5DyOU/7Nts4kVibLJ8c6uSRkYBP4Ze/nPdF70zvsl +l7vEplco38FkZ7vxvq2d/NfMF/WDfQ/RW3HfxF8Uv7KSmKd20eEFbEyqrdnv2j954KG l/9CsTtuYtz0V3iIrVS6ZdaRHr0LbSGsa2AcUG1jVVxAnIpciVtnXkU5c+F3cXoaPVN8 AydjmWqMF74iw7AN69rNHQwmeoHoCowzAbMJWRRH3Thar/r478JKPfZl4fyDV6JCHcOm /PvA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=xmQwcA4W; 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 i3si6775180edq.163.2019.10.06.10.54.40; Sun, 06 Oct 2019 10:55:03 -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=xmQwcA4W; 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 S1730813AbfJFRv7 (ORCPT + 99 others); Sun, 6 Oct 2019 13:51:59 -0400 Received: from mail.kernel.org ([198.145.29.99]:49016 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727840AbfJFRu5 (ORCPT ); Sun, 6 Oct 2019 13:50:57 -0400 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 39A0E222BE; Sun, 6 Oct 2019 17:45:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1570383946; bh=ab/650njBQ21/h5fy4o51oMZSKILe8Zt+y0PvRGsxZs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=xmQwcA4WePSOvK8JD/PDU2mf8J/ZpA6F34zSCBAkq5zuWba42p4SKTd7qRxf24E7q Ge/ghob1BCNoehfTWSoBhS9CA9UdWXtJnCdLxWg3mnzVfayVt/TvUhAHpClUu9hhjv hcuvCWOeCGvZZ/weDeVv7G4P15eyxTs+LihRFxKE= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Navid Emamdoost , Vladimir Oltean , "David S. Miller" Subject: [PATCH 5.3 154/166] net: dsa: sja1105: Prevent leaking memory Date: Sun, 6 Oct 2019 19:22:00 +0200 Message-Id: <20191006171225.866005334@linuxfoundation.org> X-Mailer: git-send-email 2.23.0 In-Reply-To: <20191006171212.850660298@linuxfoundation.org> References: <20191006171212.850660298@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: Navid Emamdoost [ Upstream commit 68501df92d116b760777a2cfda314789f926476f ] In sja1105_static_config_upload, in two cases memory is leaked: when static_config_buf_prepare_for_upload fails and when sja1105_inhibit_tx fails. In both cases config_buf should be released. Fixes: 8aa9ebccae87 ("net: dsa: Introduce driver for NXP SJA1105 5-port L2 switch") Fixes: 1a4c69406cc1 ("net: dsa: sja1105: Prevent PHY jabbering during switch reset") Signed-off-by: Navid Emamdoost Signed-off-by: Vladimir Oltean Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- drivers/net/dsa/sja1105/sja1105_spi.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) --- a/drivers/net/dsa/sja1105/sja1105_spi.c +++ b/drivers/net/dsa/sja1105/sja1105_spi.c @@ -409,7 +409,8 @@ int sja1105_static_config_upload(struct rc = static_config_buf_prepare_for_upload(priv, config_buf, buf_len); if (rc < 0) { dev_err(dev, "Invalid config, cannot upload\n"); - return -EINVAL; + rc = -EINVAL; + goto out; } /* Prevent PHY jabbering during switch reset by inhibiting * Tx on all ports and waiting for current packet to drain. @@ -418,7 +419,8 @@ int sja1105_static_config_upload(struct rc = sja1105_inhibit_tx(priv, port_bitmap, true); if (rc < 0) { dev_err(dev, "Failed to inhibit Tx on ports\n"); - return -ENXIO; + rc = -ENXIO; + goto out; } /* Wait for an eventual egress packet to finish transmission * (reach IFG). It is guaranteed that a second one will not