mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-24 02:22:34 +03:00
There is race condition between nvgpu runtime suspend and l2_flush or tlb_invalidate that happens as part of gmmu_unmap done during nvgpu_gr_ctx_free. Since l2_flush and tlb_invalidate does not do pm_runtime_get_sync, the suspend in progress can lead to registers getting locked and then l2_flush or tlb_invalidate can access the registers when registers are locked (GPU is railgated). Bug 3132891 Signed-off-by: Sagar Kamble <skamble@nvidia.com> Change-Id: If1696a9e9d3d9bc5fd55dd754be90a81114a75cc Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2425680 Reviewed-by: automaticguardword <automaticguardword@nvidia.com> Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com> Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com> Reviewed-by: Deepak Nibade <dnibade@nvidia.com> Reviewed-by: Seshendra Gadagottu <sgadagottu@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com> GVS: Gerrit_Virtual_Submit