msm: synx: replace spinlocks with mutexes
Earlier design was too conservation, using the spinlock
available with backing dma fence to achieve critical
section for updating synx objects. This is way too
conservative approach and can lead to deadlocks as
the thread holding on to spinlock could be interrupted
and result in deadlock with another thread waiting to
acquire the lock owned by the scheduled out process.
One solution is to acquire non-interruptible spinlock.
But this could lead to performance issues.
Hence adding another mutex lock on top of the existing
spinlock and manage synx object modifications using the
mutex lock instead of the dma fence spinlock.
Change-Id: If460ba0027c8205ddf590cc23394f368902aadc3
Signed-off-by:
Sumukh Hallymysore Ravindra <shallymy@codeaurora.org>
Loading
Please register or sign in to comment