Received: by 2002:a25:e7d8:0:0:0:0:0 with SMTP id e207csp659323ybh; Tue, 10 Mar 2020 06:03:14 -0700 (PDT) X-Google-Smtp-Source: ADFU+vvAvolJ/cCtxXOoD1ReTSZxy37Y8dmL/+JslP0DAvFwIoTNv2CCKXKW+C5KjvQJaJxLSMlP X-Received: by 2002:a05:6830:1581:: with SMTP id i1mr3583601otr.349.1583845394679; Tue, 10 Mar 2020 06:03:14 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1583845394; cv=none; d=google.com; s=arc-20160816; b=xN3Bgy6/iwmn0Idll7Ig/kPLgujQ4M1eR2UM4y1G/4uuWguKOxIMw+1xm3arDIZEKe VfQrQoOQdVu2p4nfh/vXM2V16U3Z/AT6OF4Gau2625n0bwzlJPBLdjJjMtWIbAjwX5Ht sXXNImPL0xxPteXFO+lUAtHVDRW+LTBFkySw1doJmD8Pvm88mzz/YN9b9dthM4lytudD qC88xqxYCT9BzxF7dtagupaif5aQe9Gnd2ZMm2o0cyoAYNWjwHIuZL3EtGc1Gw873g8k 2SkXUtLaJIYREkmCyuxiQ3bXs5c4Lfh6Pgr0WWC+hCrbgXgWUvDdTy4XkPnQJrZNLtJK c3Fg== 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=gMYrtXBIhDpc/u9RQe5PK6kPZ8RZmkD0S0wVT5HejRY=; b=XmaKMjv9RN/ClHGw+C3y+mcWlOqbeQFdEFMV6MjtdXvViO62VZlHx4mvRAvU5iz4yl 60Ecw7lhRmsz9em/Nwd7CBDrn6xFmFQg4phMArgp/+H/1/ctAQeHiBLWk1NRmlbDwX3o dfqvriJijEYp6LSYUcmrZMjLNMxcliaE7GvTgQ7eTPMPaAeQGR2ydVT9DmK+FBZUXlQd prQvjwMvTDB0mh4uzmEr24d+CynhkdZ8TsuzPSJYehbelLmVjJW63bkDyot3sI6jNJfj AaObEeA30wjTMB2YV9tUkOZG3eQKbv71mq+5nWKA4eEq52jTzV198E7mBDOOtFnPZ2Y3 QJaA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b="W/Ocnjhk"; 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 n190si3347770oig.207.2020.03.10.06.02.51; Tue, 10 Mar 2020 06:03:14 -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="W/Ocnjhk"; 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 S1730271AbgCJNBa (ORCPT + 99 others); Tue, 10 Mar 2020 09:01:30 -0400 Received: from mail.kernel.org ([198.145.29.99]:42690 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730056AbgCJNB1 (ORCPT ); Tue, 10 Mar 2020 09:01:27 -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 3D6872468D; Tue, 10 Mar 2020 13:01:26 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1583845286; bh=QL+iDxpAQ55WZzcdTxqZzCarwSHL5yq6UkiU0yJfmbE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=W/Ocnjhk2f5ltAIp5WpeA8uZWuMuWFIzlX/YJICLr3mF/DXKSm/l+QtzvmVc3L+Oh tLLddg2Rk2ll+eHYso7MFNWwvc7wHZfvU7IZjF8QnVahfnaCYrIG7lasOvFtJ2BooG gttcioams+QjEF3De+Fn/T3JsrFvY1OyzUW1pVHM= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Dragos Tarcatu , Mark Brown Subject: [PATCH 5.5 130/189] ASoC: topology: Fix memleak in soc_tplg_link_elems_load() Date: Tue, 10 Mar 2020 13:39:27 +0100 Message-Id: <20200310123652.954236710@linuxfoundation.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200310123639.608886314@linuxfoundation.org> References: <20200310123639.608886314@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: Dragos Tarcatu commit 2b2d5c4db732c027a14987cfccf767dac1b45170 upstream. If soc_tplg_link_config() fails, _link needs to be freed in case of topology ABI version mismatch. However the current code is returning directly and ends up leaking memory in this case. This patch fixes that. Fixes: 593d9e52f9bb ("ASoC: topology: Add support to configure existing physical DAI links") Signed-off-by: Dragos Tarcatu Link: https://lore.kernel.org/r/20200207185325.22320-2-dragos_tarcatu@mentor.com Signed-off-by: Mark Brown Signed-off-by: Greg Kroah-Hartman --- sound/soc/soc-topology.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) --- a/sound/soc/soc-topology.c +++ b/sound/soc/soc-topology.c @@ -2335,8 +2335,11 @@ static int soc_tplg_link_elems_load(stru } ret = soc_tplg_link_config(tplg, _link); - if (ret < 0) + if (ret < 0) { + if (!abi_match) + kfree(_link); return ret; + } /* offset by version-specific struct size and * real priv data size