summaryrefslogtreecommitdiff
path: root/drivers/base/firmware_class.c
diff options
context:
space:
mode:
authorGaurav Kohli <gkohli@codeaurora.org>2017-06-12 19:25:31 +0530
committerGerrit - the friendly Code Review server <code-review@localhost>2017-06-13 00:02:17 -0700
commit6ab2197424c24a26433606d26575d54c68694623 (patch)
tree7aa0b9477d209a0da6c4621f14fc65ae27ac94ae /drivers/base/firmware_class.c
parent85baaeb2e2d0e7c67bf4e5cc22d15e173d01b209 (diff)
firmware_class: Avoid memory leak when FW_OPT_NOCACHE is set
During call of request_firmware_into_buf, if FW_OPT_NOCACHE is set then release_firmware skip freeing of fw_id. So explicitly freeing the same to avoid memory leak. Change-Id: I7e1d6f8f06c4532b2bcbf256267fd1e90f5ced70 Signed-off-by: Gaurav Kohli <gkohli@codeaurora.org>
Diffstat (limited to 'drivers/base/firmware_class.c')
-rw-r--r--drivers/base/firmware_class.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/base/firmware_class.c b/drivers/base/firmware_class.c
index 212ca2eee257..68561696f31b 100644
--- a/drivers/base/firmware_class.c
+++ b/drivers/base/firmware_class.c
@@ -295,6 +295,7 @@ static void fw_free_buf(struct firmware_buf *buf)
{
struct firmware_cache *fwc = buf->fwc;
if (!fwc) {
+ kfree_const(buf->fw_id);
kfree(buf);
return;
}