diff options
| author | Benjamin Chan <bkchan@codeaurora.org> | 2017-03-06 11:48:27 -0500 |
|---|---|---|
| committer | Rajkumar Subbiah <rsubbia@codeaurora.org> | 2017-03-16 13:00:50 -0400 |
| commit | 5c7521a040f2a49e516fdd7e1262dbee175fcfb0 (patch) | |
| tree | 4f494dfa39ccb42301aa579ca18bab40fc4e2f7d /drivers/video/fbdev | |
| parent | 6f55033ecf068f77136caac2e7c4a7869b3ec2bd (diff) | |
msm: mdss: Add lock to avoid release of active session in rotator
Add mutex lock to protect an active rotator session from being closed.
Without the lock, this can happen if a rotator closing IOCTL is
called from a separate thread.
CRs-Fixed: 2006159
Change-Id: I927a0c626bdae5ef149e12979ec4befdbac1b7f7
Signed-off-by: Benjamin Chan <bkchan@codeaurora.org>
Diffstat (limited to 'drivers/video/fbdev')
| -rw-r--r-- | drivers/video/fbdev/msm/mdss_rotator.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/video/fbdev/msm/mdss_rotator.c b/drivers/video/fbdev/msm/mdss_rotator.c index 0307d570ff64..fdd1c0153ce0 100644 --- a/drivers/video/fbdev/msm/mdss_rotator.c +++ b/drivers/video/fbdev/msm/mdss_rotator.c @@ -2065,10 +2065,12 @@ static int mdss_rotator_config_session(struct mdss_rot_mgr *mgr, return ret; } + mutex_lock(&mgr->lock); perf = mdss_rotator_find_session(private, config.session_id); if (!perf) { pr_err("No session with id=%u could be found\n", config.session_id); + mutex_unlock(&mgr->lock); return -EINVAL; } @@ -2091,6 +2093,7 @@ static int mdss_rotator_config_session(struct mdss_rot_mgr *mgr, config.output.format); done: ATRACE_END(__func__); + mutex_unlock(&mgr->lock); return ret; } |
