summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohan Mossberg <johan.xx.mossberg@stericsson.com>2011-03-23 12:03:36 +0100
committerUlf Hansson <ulf.hansson@stericsson.com>2011-09-19 15:15:00 +0200
commitc1f2731a5b5e068dfc30218e8ef005f17b50ec41 (patch)
tree15313a63e5b8ad8d8948e337a8913edde369b96d
parentc320852717eb7cd61dd881937a9ae8f8eb8d763e (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);