diff options
author | Renato Grottesi <otaner@google.com> | 2023-12-13 19:05:17 +0000 |
---|---|---|
committer | Renato Grottesi <otaner@google.com> | 2023-12-14 17:09:45 +0000 |
commit | 816d412ab903b9fb6eb0608e405e984c42c988b9 (patch) | |
tree | 4f9814a71be1596aa83a5ebeb5adcebf2a8abad0 | |
parent | 2226bae46b7a606e97a9ced0e91d7209cd04758c (diff) | |
download | gpu-816d412ab903b9fb6eb0608e405e984c42c988b9.tar.gz |
Fix deadlock BTW user thread and page fault workerandroid-u-qpr2-beta-3_r0.7android-u-qpr2-beta-3_r0.6android-u-qpr2-beta-3_r0.5android-u-qpr2-beta-3_r0.4android-u-qpr2-beta-3_r0.3android-u-qpr2-beta-3_r0.2
MIDCET-4882,GPUCORE-40989 Break deadlock BTW user thread
and page fault worker
Additional fix over the previous commit where Arm forgot to change a
kbase_gpu_vm_lock to kbase_gpu_vm_lock_with_pmode_sync.
Bug: 301064831
Change-Id: I9179e0b4e4c7151c83061152fd877aba7204f037
Signed-off-by: Renato Grottesi <otaner@google.com>
Test: manual run of the use case from the ticket
Provenance: https://code.ipdelivery.arm.com/c/GPU/mali-ddk/+/6221
-rw-r--r-- | mali_kbase/mali_kbase_mem_linux.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/mali_kbase/mali_kbase_mem_linux.c b/mali_kbase/mali_kbase_mem_linux.c index 0c11b23..d154583 100644 --- a/mali_kbase/mali_kbase_mem_linux.c +++ b/mali_kbase/mali_kbase_mem_linux.c @@ -982,7 +982,7 @@ int kbase_mem_flags_change(struct kbase_context *kctx, u64 gpu_addr, unsigned in /* now we can lock down the context, and find the region */ down_write(kbase_mem_get_process_mmap_lock()); - kbase_gpu_vm_lock(kctx); + kbase_gpu_vm_lock_with_pmode_sync(kctx); /* Validate the region */ reg = kbase_region_tracker_find_region_base_address(kctx, gpu_addr); |