summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohan Mossberg <johan.xx.mossberg@stericsson.com>2011-03-23 12:03:36 +0100
committerPhilippe Langlais <philippe.langlais@linaro.org>2012-03-19 08:59:45 +0100
commitb4ec7730eb503ed3b49c41584d0112ac0e6c54ec (patch)
tree5fd6d2ec5556aa6471cb14842e05b7364596ade8
parent0b58138244e1c5652dc2f3128e64e48ab51f03ce (diff)
HWMEM: Reset ref count in clean_alloc
When hwmem_alloc fails to alloc virtual memory for the kernel mapping it will call clean_alloc with a non-zero ref count. If the ref count is not reset in that case we will leak HWMEM memory. ST-Ericsson ID: 330377 ST-Ericsson FOSS-OUT ID: STETL-FOSS-OUT-10068 Change-Id: I4c203bbd090a119d1e99cc7d294e827ab8a6e9e7 Signed-off-by: Johan Mossberg <johan.xx.mossberg@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/18942 Reviewed-by: QATOOLS Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com>
-rw-r--r--drivers/misc/hwmem/hwmem-main.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/misc/hwmem/hwmem-main.c b/drivers/misc/hwmem/hwmem-main.c
index fbfd8502a1d..9223bdd013b 100644
--- a/drivers/misc/hwmem/hwmem-main.c
+++ b/drivers/misc/hwmem/hwmem-main.c
@@ -154,6 +154,7 @@ static void clean_alloc(struct hwmem_alloc *alloc)
}
alloc->flags = 0;
+ atomic_set(&alloc->ref_cnt, 0);
clean_hwmem_alloc_threadg_info_list(alloc);