Received: by 2002:a25:e74b:0:0:0:0:0 with SMTP id e72csp1967319ybh; Tue, 14 Jul 2020 11:54:27 -0700 (PDT) X-Google-Smtp-Source: ABdhPJws6V6U6jVmWkJMVX6axfw3Qk6FqeAFKOcEaXGwxCZkFrm6SBSDG5lvuL8mWokpP97CVjPG X-Received: by 2002:a50:b941:: with SMTP id m59mr5846086ede.321.1594752867188; Tue, 14 Jul 2020 11:54:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1594752867; cv=none; d=google.com; s=arc-20160816; b=PABnIHSSd2u5OR4m0Y7KS6sJ4CEP/uOtkUVlo48eEdDFrrtYORGkh5IvvegjQs4ymP q57BpElKHQ5+AApJwFsC1z3/AN1Aq/iqQHZoZeC5xxmBksdboZXTiv9BO9qvWdOTX0Gg FI1ZSDAvYEoIE3PtjjVoXKNObSxo/7h/ObMsfjAoq7iwXNKKau+U8sndsxSAAgcwcMK7 ZutjoHEjmNRnX5BiGuAphecjrl/HmfnhvLoOVBCezCz4ENWx4mCIlYy14TujLTA1aWQk +2PgiQEHxl5zLIPqiddfUgdSP5HkkbWQEbjYSNhgj4p6jglaf4fgUig6w/TNDXldCH9f z4hw== 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=uOaZjCgw+hxjADnWBl6w8pAq23U2mZawImRZctckvvmpeZC4z2vuabuVcNb09cav3L TK/ZdngK4JmzW8yWvxpT/efFZuJLGda7uR59ZpbEj8q0Wl32Tf038L8HQTA31jrT1DJX FfSfS0V4cYG7KYOmbRgnt0jPoGsXn1sjtGDmISqjFcKuR4WkU+HNrotZs/+MZt70z5dP HRXTi7Ns7vkRZ1LICKreoOAr4IxpzEhhmgE4zyZnSY03cq40FenVyW7+PykYs+2O/c/N /iGn83GTDUmIm/PB3znoPrtrIeKQiZVQfgFW17rD6VvYX1ptRAI5DmSdUH+iRzEnEu6G X3RA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=lcCNyMwT; 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 o10si11827894ejx.722.2020.07.14.11.54.03; Tue, 14 Jul 2020 11:54:27 -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=lcCNyMwT; 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 S1730309AbgGNSub (ORCPT + 99 others); Tue, 14 Jul 2020 14:50:31 -0400 Received: from mail.kernel.org ([198.145.29.99]:46698 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729603AbgGNSua (ORCPT ); Tue, 14 Jul 2020 14:50:30 -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 29DC6207F5; Tue, 14 Jul 2020 18:50:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1594752630; bh=D3i3S5j44fiC1IDgMasI5b1YhvYLYdQs/3us46NgZYw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=lcCNyMwTfWaBfTPywkMNL0J6cVP0j4qSKIgUTPAsqDcUpDLTSALW2/GK9EolBk9hj tWcQol13ZMTPZHaHvDXR3xkdTZ8SB89MvuK6OTdyN2EAWx0RbJzVTVOUY0UAeKUHEN 0hH+UGd0OH+DGkc5jT5Ddkr5IaplcUQzeFmBOzU0= 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.4 052/109] smsc95xx: avoid memory leak in smsc95xx_bind Date: Tue, 14 Jul 2020 20:43:55 +0200 Message-Id: <20200714184108.011739687@linuxfoundation.org> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20200714184105.507384017@linuxfoundation.org> References: <20200714184105.507384017@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