Received: by 2002:a25:e74b:0:0:0:0:0 with SMTP id e72csp1976940ybh; Tue, 14 Jul 2020 12:06:38 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyWWJ0cKFyntoO/PpxNrqtUJIcl6Wnrz6w0Shy631541Ec8SWRG1AqsNEjbkBlkTatjYWLI X-Received: by 2002:a17:906:cecf:: with SMTP id si15mr5773702ejb.508.1594753598725; Tue, 14 Jul 2020 12:06:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1594753598; cv=none; d=google.com; s=arc-20160816; b=DZjiecBMYWW5gaX5UrLzAw7iJSRJL2CfBW61KZpM63cil2U26W7mmbNoQjkFacO+dF JXxQcjeSGynAMNZC+MOvR4JF1JwqewVnk5YxqIBtPWm+B9fRHRNVNnPChDo6FMDRHNRn cH4xyD3inivK2D1Cj94prujjN6+Z9KAJWl8byUbrv2+Y0ntol+VzdmVA9dzH2BAy477V e0suFRu0VNz8W1LhcSWVRpTesGfGtrB1lpwmfeE+tDROqHk2ksF1JJt2ikuJlsT/EaBJ kc8gmX+mxVdKGfODqFqUtn/YUWUBYs+eHl4aHNVInsDpqIqXA9fvLvcU4S6G5/PxN43A IkOg== 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=DOoDDHwra8ra77bEwhcAA56CLhS8Ujq9jbKQOsm0izU=; b=U+K4xxJAw/nkQZktIKLPT99xZdVBedylQLxfjVJd6w/e9qVUeT7/4WefK2nlUlSmwH g1O2x1aYidPwb2ZkhjivUKCEzkzfQsiIkdGnxUxIkUBJZw3i0fbTlAcG4DP1SIWTURpT 1N+klzLJJQr6hjBsuvCDiOv4igMxcH+UCVV1E/Q7pC77Vpd8RQd7WVWtxtFLBDOxbaRC heJXf2fnrY/V1m4rRjdCwBn0Mly0ZplImdt83smEU4CmDKOCAjB3Ea+8VQ4E/3dBAtAr GrJkBGDlfuLfcjwMGlleNRi9qouiwzcCeVSbmghS6rk1SeWuj1+5Vlw/d9toOyk6aZPj ld3w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=V8qRcimv; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id d9si10662414eja.455.2020.07.14.12.06.14; Tue, 14 Jul 2020 12:06:38 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=V8qRcimv; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730989AbgGNS4b (ORCPT + 99 others); Tue, 14 Jul 2020 14:56:31 -0400 Received: from mail.kernel.org ([198.145.29.99]:54454 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730985AbgGNS42 (ORCPT ); Tue, 14 Jul 2020 14:56:28 -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 AA374229CA; Tue, 14 Jul 2020 18:56:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1594752988; bh=D3i3S5j44fiC1IDgMasI5b1YhvYLYdQs/3us46NgZYw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=V8qRcimvfsqgjH3n++hkGUhA6xYbK0sUMKV5rEY7yjlBNJkTAJC6fnkuLR0qkXLu6 Bk1any/vl/83HSXd2XW4zDRmmSPlThUxKjU80iaSBFHOu8lKfITC3HnOaP1hSP+lby bGUvulq7+kV8cV5OJKcs++2jb+C5NDLBkbyN195Y= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Andre Edich , Parthiban Veerasooran , "David S. Miller" , Sasha Levin Subject: [PATCH 5.7 076/166] smsc95xx: avoid memory leak in smsc95xx_bind Date: Tue, 14 Jul 2020 20:44:01 +0200 Message-Id: <20200714184119.493097971@linuxfoundation.org> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20200714184115.844176932@linuxfoundation.org> References: <20200714184115.844176932@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: Andre Edich [ Upstream commit 3ed58f96a70b85ef646d5427258f677f1395b62f ] In a case where the ID_REV register read is failed, the memory for a private data structure has to be freed before returning error from the function smsc95xx_bind. Fixes: bbd9f9ee69242 ("smsc95xx: add wol support for more frame types") Signed-off-by: Andre Edich Signed-off-by: Parthiban Veerasooran Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- drivers/net/usb/smsc95xx.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/net/usb/smsc95xx.c b/drivers/net/usb/smsc95xx.c index eb404bb74e18e..bb4ccbda031ab 100644 --- a/drivers/net/usb/smsc95xx.c +++ b/drivers/net/usb/smsc95xx.c @@ -1293,7 +1293,8 @@ static int smsc95xx_bind(struct usbnet *dev, struct usb_interface *intf) /* detect device revision as different features may be available */ ret = smsc95xx_read_reg(dev, ID_REV, &val); if (ret < 0) - return ret; + goto free_pdata; + val >>= 16; pdata->chip_id = val; pdata->mdix_ctrl = get_mdix_status(dev->net); -- 2.25.1