summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/msm
diff options
context:
space:
mode:
authorMicah Richert <richert@braincorporation.com>2014-04-09 14:11:31 -0700
committerRob Clark <robdclark@gmail.com>2014-04-25 08:58:23 -0400
commit1ffa2425bf7cc70f87d5cdbe12175fd4c661dd19 (patch)
tree1952da6d3b7d28c4b7e0bbd65b247bf8ae30b2b7 /drivers/gpu/drm/msm
parentabaafc0af9f74f8e6212a3bf54fb907358b40ad7 (diff)
drm/msm: fix memory leak
Signed-off-by: Micah Richert <richert@braincorporation.com> Signed-off-by: Rob Clark <robdclark@gmail.com>
Diffstat (limited to 'drivers/gpu/drm/msm')
-rw-r--r--drivers/gpu/drm/msm/msm_gem.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpu/drm/msm/msm_gem.c b/drivers/gpu/drm/msm/msm_gem.c
index 3da8264d3039..bb8026daebc9 100644
--- a/drivers/gpu/drm/msm/msm_gem.c
+++ b/drivers/gpu/drm/msm/msm_gem.c
@@ -118,8 +118,10 @@ static void put_pages(struct drm_gem_object *obj)
if (iommu_present(&platform_bus_type))
drm_gem_put_pages(obj, msm_obj->pages, true, false);
- else
+ else {
drm_mm_remove_node(msm_obj->vram_node);
+ drm_free_large(msm_obj->pages);
+ }
msm_obj->pages = NULL;
}