diff options
author | Deepak Nibade <dnibade@nvidia.com> | 2017-03-14 04:43:35 -0400 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2017-03-23 10:13:55 -0400 |
commit | 7505a759542c2d95e5abb42d44b8fb6afda74a87 (patch) | |
tree | 4276ff74ca3cc8dbc39de4b9f35e0eca88992c92 /include/linux/tegra_vgpu_t18x.h | |
parent | 978d13efe5719b28ea90b95d21bf25066df75ca8 (diff) |
gpu: nvgpu: take power refcount in gk20a_cde_convert()
We have a gk20a_busy() call in gk20a_buffer_convert_gpu_to_cde()
and we again call gk20a_busy() in gk20a_submit_channel_gpfifo()
If gk20a_do_idle() is triggered in between these two calls,
then this leads to a deadlock and results in idle failure
Hence to avoid this take power refcount in a more fine-grained
way i.e. in gk20a_cde_convert() instead of taking in
gk20a_buffer_convert_gpu_to_cde()
Keep gk20a_cde_execute_buffer() out of the gk20a_busy()/
gk20a_idle() pair since we take power refcount in submit path
anyways
Add correct error handling path in gk20a_cde_convert()
Bug 200287073
Change-Id: Iffea2d4c03f42b47dbf05e7fe8fe2994f9c6b37c
Signed-off-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-on: http://git-master/r/1324329
(cherry picked from commit ce057d784d40a6ce57e892d58e211ed2fd9826f8)
Reviewed-on: http://git-master/r/1320408
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'include/linux/tegra_vgpu_t18x.h')
0 files changed, 0 insertions, 0 deletions