Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 47261ce9 authored by Narendra Muppalla's avatar Narendra Muppalla
Browse files

disp: msm: sde: avoid mutex lock for crtc flush event thread



As per current design in crtc disable sequence event thread
can cause deadlock.This change avoids mutex lock for crtc
flush event thread to flush all event work.


Change-Id: Ia7156032bee9245fe84fd1621cf1994920b8e574
Signed-off-by: default avatarNarendra Muppalla <NarendraM@codeaurora.org>
parent 59571e81
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -4162,7 +4162,12 @@ static void sde_crtc_disable(struct drm_crtc *crtc)
	msm_mode_object_event_notify(&crtc->base, crtc->dev, &event,
			(u8 *)&power_on);

	if (atomic_read(&sde_crtc->frame_pending)) {
		mutex_unlock(&sde_crtc->crtc_lock);
		_sde_crtc_flush_event_thread(crtc);
		mutex_lock(&sde_crtc->crtc_lock);
	}

	kthread_cancel_delayed_work_sync(&sde_crtc->static_cache_read_work);
	kthread_cancel_delayed_work_sync(&sde_crtc->idle_notify_work);