Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp2542590pxj; Mon, 10 May 2021 05:33:32 -0700 (PDT) X-Google-Smtp-Source: ABdhPJy24V42WHwj/MYeErOLH4Oak0fBH15pSFVhgNNBwTaGnQyHcm9zrMX2EZ2NOtDLzyPu+Dzl X-Received: by 2002:a6b:e80f:: with SMTP id f15mr15030006ioh.64.1620650011977; Mon, 10 May 2021 05:33:31 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1620650011; cv=none; d=google.com; s=arc-20160816; b=ujnR90m3GakUkZahSV5T1JN1lyhKV9d9dlLbeyBQKUH1+9nWKpZaCOirmx/o8diagR 6QWN83Lprm1tnbMgAuasqeDPjXrMYjQLF6RoFGiDvajsNTS4x4F/vZjnrfWkG1U2yfzJ SUJrr7cqu+xnKk7R92+D9Xg1ZHey4J1Lgv4GDTyUwB+9k8z2T5IuJqCNQ6MmLLcsg82L a/agxllM0E3UOcey9FKbGDgyDR4xWySHwij36COv4rSwcGhr+X2vSxbMvN1FRUUq4YS+ KhQt0bj4wq5sujvRD5z0TMj3mK90gRt/aaTbpn1wrV8fPHhBZE/Y5+ys9YEH0KPAz8c2 HPWA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=nbsSOpwdWxTV6ZpZg6hoLEeRAMVU9xM2sPS6bObfrEg=; b=TZoRXrr+ouMiBZAMLw0NXoitkD6YtFGRALOeGzo0pMDAy6pUhJT6k+TOeqYuRHowF9 V9SEUTeAtLh7KtdYDD2DDfW9pHy8VWQhaZDrmtbtbq8dKQpF2mPptht6aqKyz/7LAgLU Emr9dzk/GIrPKUouoFPEXXxyxJaCyDoPXBd1rwcgVKlHXp1Qq9O5A54B6xT3w8l8ayEQ POv1EQs4UMMBbHruVEAai+eL+MW8jyy63ul4eQtgTvgDC/784y1+5T0C6enV8qXV9sYS Ie51td5a/Ff8DofEThe6Ch5R0undtOK5OUAR2HuSWXLd6uHswWZpoHDQFEszeQESWfFT 9w1g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=a4InlZGy; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id d5si14683091ioq.28.2021.05.10.05.33.18; Mon, 10 May 2021 05:33:31 -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=@linuxfoundation.org header.s=korg header.b=a4InlZGy; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1344130AbhEJMYv (ORCPT + 99 others); Mon, 10 May 2021 08:24:51 -0400 Received: from mail.kernel.org ([198.145.29.99]:45870 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237017AbhEJLLK (ORCPT ); Mon, 10 May 2021 07:11:10 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 58434614A5; Mon, 10 May 2021 11:06:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1620644780; bh=24zVqq3CQ64PapMLtwoSy8M/7B9nvQeSvcQyDn9+vaU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=a4InlZGyCVTnRhGUx7PaSMBo8E7h10Mmut4zhqXe5llxkVOpBkhP6rwV3Tc22ms8Y R4C5It/BQ5gPlv9QQlqk8CbtevIf5EvtALS58Mi1isvL1Yf2H/+1eTaugQaJhZPLOW wiVgPDVOwJ7RM5dFq8tCCb3ONTTTVXrMN2HKHz/g= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, syzbot+889397c820fa56adf25d@syzkaller.appspotmail.com, Muhammad Usama Anjum , Hans Verkuil , Mauro Carvalho Chehab , Sasha Levin Subject: [PATCH 5.12 220/384] media: em28xx: fix memory leak Date: Mon, 10 May 2021 12:20:09 +0200 Message-Id: <20210510102022.152607706@linuxfoundation.org> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210510102014.849075526@linuxfoundation.org> References: <20210510102014.849075526@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Muhammad Usama Anjum [ Upstream commit 0ae10a7dc8992ee682ff0b1752ff7c83d472eef1 ] If some error occurs, URB buffers should also be freed. If they aren't freed with the dvb here, the em28xx_dvb_fini call doesn't frees the URB buffers as dvb is set to NULL. The function in which error occurs should do all the cleanup for the allocations it had done. Tested the patch with the reproducer provided by syzbot. This patch fixes the memleak. Reported-by: syzbot+889397c820fa56adf25d@syzkaller.appspotmail.com Signed-off-by: Muhammad Usama Anjum Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Sasha Levin --- drivers/media/usb/em28xx/em28xx-dvb.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/media/usb/em28xx/em28xx-dvb.c b/drivers/media/usb/em28xx/em28xx-dvb.c index 526424279637..471bd74667e3 100644 --- a/drivers/media/usb/em28xx/em28xx-dvb.c +++ b/drivers/media/usb/em28xx/em28xx-dvb.c @@ -2010,6 +2010,7 @@ ret: return result; out_free: + em28xx_uninit_usb_xfer(dev, EM28XX_DIGITAL_MODE); kfree(dvb); dev->dvb = NULL; goto ret; -- 2.30.2