msm: mdss: fix incorrect mutex unlocking during NOTIFY_UPDATE_STOP
When servicing NOTIFY_UPDATE_STOP command, if the notify object
was uninitialized then mutex lock is obtained on one object but
unlock is done on a different object. This change fixes it.
CRs-Fixed: 1088059
Change-Id: I66cbe48b7f4910228a6af57610a8427fea7fd1f2
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
diff --git a/drivers/video/fbdev/msm/mdss_fb.c b/drivers/video/fbdev/msm/mdss_fb.c
index 0ecbe16..1bdc826 100644
--- a/drivers/video/fbdev/msm/mdss_fb.c
+++ b/drivers/video/fbdev/msm/mdss_fb.c
@@ -243,9 +243,11 @@
}
} else if (notify == NOTIFY_UPDATE_STOP) {
mutex_lock(&mfd->update.lock);
- if (mfd->update.init_done)
+ if (mfd->update.init_done) {
+ mutex_unlock(&mfd->update.lock);
+ mutex_lock(&mfd->no_update.lock);
reinit_completion(&mfd->no_update.comp);
- else {
+ } else {
mutex_unlock(&mfd->update.lock);
pr_err("notify update stop called without init\n");
return -EINVAL;