On Wed, Jan 27, 2021 at 05:24:40PM +0200, Iskren Chernev wrote:
Before the offending commit in msm_atomic_commit_tail wait_flush was called once per frame, after the commit was submitted. After it wait_flush is also called at the beginning to ensure previous potentially async commits are done.
For cmd panels the source of wait_flush is a ping-pong irq notifying a completion. The completion needs to be notified with complete_all so multiple waiting parties (new async committers) can proceed.
Signed-off-by: Iskren Chernev iskren.chernev@gmail.com Suggested-by: Rob Clark robdclark@gmail.com Fixes: 2d99ced787e3d ("drm/msm: async commit support")
Nice job tracking down this fix!
Reviewed-by: Brian Masney masneyb@onstation.org Tested-by: Brian Masney masneyb@onstation.org