msm: kgsl: Avoid ref counting in adreno_perfcounter_save()
Ref counting during adreno_perfcounter_save() creates a race condition
in the adreno_stop() path which results in an invalid dcvs sampling
after the state is transitioned to slumber. At the start of transition
to slumber, the ref count is 0. When we reach
adreno_perfcounter_save(), the ref count transitions from 0 -> 1 -> 0.
This triggers a dcvs sampling in another thread which races with the
slumber thread.
We can fix this by avoiding ref counting inside
adreno_perfcounter_save() since gpu is always ON at this point.
Change-Id: I20329d1ef83b8cb928ba0229c7a1301a9004168c
Signed-off-by: Akhil P Oommen <akhilpo@codeaurora.org>
Loading
Please register or sign in to comment