summaryrefslogtreecommitdiff
path: root/mali_kbase/mali_kbase_defs.h
diff options
context:
space:
mode:
authorSuzanne Candanedo <suzanne.candanedo@arm.com>2022-12-12 15:54:52 +0000
committerGuus Sliepen <gsliepen@google.com>2023-01-10 11:16:21 +0000
commit422aa1fad7e63f16000ffb9303e816b54ef3d8ca (patch)
tree68e232a052fb107520f41c1a24cede3e46622013 /mali_kbase/mali_kbase_defs.h
parent0483baae8f0ccdb93a8345200dd1ab74f16b27e8 (diff)
downloadgpu-422aa1fad7e63f16000ffb9303e816b54ef3d8ca.tar.gz
MIDCET-4324/GPUCORE-35490: Prevent incorrect clearing of no user free property
Our code didn't check if KBASE_REG_NO_USER_FREE was already set in two code paths (in mali_kbase_csf_tiler_heap.c and mali_kbase_csf.c). This could be used to maliciously clear that KBASE_REG_NO_USER_FREE flag. We add a new refcount for this no user free property, replacing the KBASE_REG_NO_USER_FREE flag, as a stopgap solution. In addition to this: - fix a possible race condition in JIT alloc and tiler heap init where another thread could take a no user free reference while the DONT_NEED flag not yet being set - fix another issue in JIT alloc where reg->flags was updated without taking the appropriate lock - move the no user free decref to remove_queue to clean up context termination code - refactor memory helpers Also includes: - GPUCORE-35469: Fix list del corruption issue in shrinker callback - GPUCORE-35221 Defer the freeing of VA regions in the chunked tiler heap shrinker callback - GPUCORE-35499: Fix GROUP_SUSPEND kcpu suspend handling to prevent UAF - GPUCORE-35268: Fix UAF due to use of MEM_FLAGS_CHANGE ioctl for JIT allocs (cherry picked from commit 7a1dc910a6a8c9c5aa06677c936c8ad6e9c369ab) Bug: 260123539 Provenance: https://code.ipdelivery.arm.com/c/GPU/mali-ddk/+/4801 Change-Id: I7e2349b135e61054f567bdf0577d27eb224d2b12
Diffstat (limited to 'mali_kbase/mali_kbase_defs.h')
-rw-r--r--mali_kbase/mali_kbase_defs.h3
1 files changed, 1 insertions, 2 deletions
diff --git a/mali_kbase/mali_kbase_defs.h b/mali_kbase/mali_kbase_defs.h
index 6c4e3e8..c0b8d6e 100644
--- a/mali_kbase/mali_kbase_defs.h
+++ b/mali_kbase/mali_kbase_defs.h
@@ -154,8 +154,7 @@
/* Maximum number of pages of memory that require a permanent mapping, per
* kbase_context
*/
-#define KBASE_PERMANENTLY_MAPPED_MEM_LIMIT_PAGES ((32 * 1024ul * 1024ul) >> \
- PAGE_SHIFT)
+#define KBASE_PERMANENTLY_MAPPED_MEM_LIMIT_PAGES ((64 * 1024ul * 1024ul) >> PAGE_SHIFT)
/* Minimum threshold period for hwcnt dumps between different hwcnt virtualizer
* clients, to reduce undesired system load.
* If a virtualizer client requests a dump within this threshold period after