disp: msm: sde: manage vblank refcount concurrency

Vblank refcount can reach out of sync with below case
 1. event_thread triggers the vblank_enable
 2. commit_thread triggers the modeset
   2.a modeset resets the vblank refcount with mode_set
 3. event_thread triggers the vblank_disable

Event 2.a resets the vblank refcount and vblank disable
request after 2.a is going to fail. This can be fixed
by avoiding concurrency between mode_set call and vblank
request.

Change-Id: Ibb810ec90e81d63feee443f1c37dd736d5cfac0d
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
This commit is contained in:
Dhaval Patel
2020-06-12 15:39:33 -07:00
committed by Gerrit - the friendly Code Review server
parent 743dc695c4
commit 44cde01fc7
5 changed files with 37 additions and 27 deletions

View File

@@ -302,7 +302,6 @@ struct sde_kms {
atomic_t detach_sec_cb;
atomic_t detach_all_cb;
struct mutex secure_transition_lock;
struct mutex vblank_ctl_global_lock;
bool first_kickoff;
bool qdss_enabled;