diff options
author | Deepak Nibade <dnibade@nvidia.com> | 2016-01-12 10:30:10 -0500 |
---|---|---|
committer | Terje Bergstrom <tbergstrom@nvidia.com> | 2016-01-21 10:52:11 -0500 |
commit | cd09ac26c7e10fbc4ca96b54be3b1578614e3680 (patch) | |
tree | 8cf5e6e78ae087d5610bdd3ed022bdbdefa974aa /drivers/gpu/nvgpu/gk20a/pmu_gk20a.h | |
parent | 3c6b40c762f0d4501c86f4d386a53165208a8677 (diff) |
gpu: nvgpu: move resetup_ramfc() out of sync_lock
We currently have this sequence :
- acquire sync_lock
- sync_create
- resetup_ramfc()
- release sync_lock
but this can lead to deadlock in case resetup_ramfc()
triggers below stack :
- resetup_ramfc()
- channel_preempt() - preemption fails
- trigger recovery
- channel_abort()
- acquire sync_lock
Fix this by moving resetup_ramfc() out of sync_lock.
resetup_ramfc() is still protected by submit_lock and
hence we cannot free sync after allocation and
before resetup
Bug 200165811
Change-Id: Iebf74d950d6f6902b6d180c2cd8cd2d50493062c
Signed-off-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-on: http://git-master/r/931726
Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Tested-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/pmu_gk20a.h')
0 files changed, 0 insertions, 0 deletions