summaryrefslogtreecommitdiff
path: root/drivers/video/fbdev
diff options
context:
space:
mode:
authorAdrian Salido-Moreno <adrianm@codeaurora.org>2014-11-26 09:49:01 -0800
committerDavid Keitel <dkeitel@codeaurora.org>2016-03-23 20:36:28 -0700
commitcf62347f51331000c986e18d87155d9903ea163a (patch)
tree71835ab3fb7912cd8039c7d647220de74bc15b29 /drivers/video/fbdev
parentad16d856d5d5014b71d4444892a070d7136a7872 (diff)
msm: mdss: free ion memory after panel is blanked
Frame buffer memory could still be fetched until panel is completely blanked, in order to avoid potential page faults by unmapping early, move unmapping of this memory until after panel is blanked. CRs-Fixed: 763046 Change-Id: Ib7eea73a7549b453cf2fc31a31f5cc3e9e1cce39 Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
Diffstat (limited to 'drivers/video/fbdev')
-rw-r--r--drivers/video/fbdev/msm/mdss_fb.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/video/fbdev/msm/mdss_fb.c b/drivers/video/fbdev/msm/mdss_fb.c
index cb89ec2ede22..9f24cac44921 100644
--- a/drivers/video/fbdev/msm/mdss_fb.c
+++ b/drivers/video/fbdev/msm/mdss_fb.c
@@ -2305,9 +2305,6 @@ static int mdss_fb_release_all(struct fb_info *info, bool release_all)
if (mfd->mdp.release_fnc)
mfd->mdp.release_fnc(mfd, true, pid);
- if (mfd->fb_ion_handle)
- mdss_fb_free_fb_ion_memory(mfd);
-
ret = mdss_fb_blank_sub(FB_BLANK_POWERDOWN, info,
mfd->op_enable);
if (ret) {
@@ -2315,6 +2312,9 @@ static int mdss_fb_release_all(struct fb_info *info, bool release_all)
mfd->index, ret, task->comm, current->tgid, pid);
return ret;
}
+ if (mfd->fb_ion_handle)
+ mdss_fb_free_fb_ion_memory(mfd);
+
atomic_set(&mfd->ioctl_ref_cnt, 0);
} else if (release_needed) {
pr_debug("current process=%s pid=%d known pid=%d mfd->ref=%d\n",