summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYan Lei <yan_lei@dahuatech.com>2022-04-10 07:19:25 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-12-31 13:33:03 +0100
commit669fb90507dbaf419aa3871bf73160e93d50487f (patch)
tree728f37f99bcab3d5709afc86415110cf1499651c
parentf299f97a8e29b52e5cedded681a4801e85c940d3 (diff)
media: dvb-frontends: fix leak of memory fw
[ Upstream commit a15fe8d9f1bf460a804bcf18a890bfd2cf0d5caa ] Link: https://lore.kernel.org/linux-media/20220410061925.4107-1-chinayanlei2002@163.com Signed-off-by: Yan Lei <yan_lei@dahuatech.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--drivers/media/dvb-frontends/bcm3510.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/media/dvb-frontends/bcm3510.c b/drivers/media/dvb-frontends/bcm3510.c
index da0ff7b44da4..68b92b4419cf 100644
--- a/drivers/media/dvb-frontends/bcm3510.c
+++ b/drivers/media/dvb-frontends/bcm3510.c
@@ -649,6 +649,7 @@ static int bcm3510_download_firmware(struct dvb_frontend* fe)
deb_info("firmware chunk, addr: 0x%04x, len: 0x%04x, total length: 0x%04zx\n",addr,len,fw->size);
if ((ret = bcm3510_write_ram(st,addr,&b[i+4],len)) < 0) {
err("firmware download failed: %d\n",ret);
+ release_firmware(fw);
return ret;
}
i += 4 + len;