summaryrefslogtreecommitdiff
path: root/mali_kbase/mmu
diff options
context:
space:
mode:
authorSuzanne Candanedo <suzanne.candanedo@arm.com>2023-04-12 12:03:55 +0100
committerGuus Sliepen <gsliepen@google.com>2023-04-17 07:23:20 +0000
commitfa979546a69669e5b6edbff8beb44132fb8522a2 (patch)
tree3641c8cefda1cefbe9738d4820bcbf66f73650ac /mali_kbase/mmu
parenta11bf032227b33017857ce39c478b8e88ba2a98b (diff)
downloadgpu-fa979546a69669e5b6edbff8beb44132fb8522a2.tar.gz
[Official] MIDCET-4458, GPUCORE-36654 Use %pK on GPU bus fault
Physical address of GPU bus fault is useful for debugging purpose. However the physical address (emitted via 0x%016llX) is also sensitive information so it should be cautiously exposed to user space. Linux kernel provides the control for physical address exposure via 'kptr_restrict'. To allow this control to work, '%pK' must be used. Bug: 275623256 Provenance: https://code.ipdelivery.arm.com/c/GPU/mali-ddk/+/5166 Change-Id: I23171bafc47e96045e42dad533ed28fc8bbcef6b (cherry picked from commit d35be16de81d9bc55dc0a586d661391e1989d6c0)
Diffstat (limited to 'mali_kbase/mmu')
-rw-r--r--mali_kbase/mmu/backend/mali_kbase_mmu_csf.c5
-rw-r--r--mali_kbase/mmu/backend/mali_kbase_mmu_jm.c5
2 files changed, 6 insertions, 4 deletions
diff --git a/mali_kbase/mmu/backend/mali_kbase_mmu_csf.c b/mali_kbase/mmu/backend/mali_kbase_mmu_csf.c
index 04f5cdf..6c52f0c 100644
--- a/mali_kbase/mmu/backend/mali_kbase_mmu_csf.c
+++ b/mali_kbase/mmu/backend/mali_kbase_mmu_csf.c
@@ -149,17 +149,18 @@ void kbase_gpu_report_bus_fault_and_kill(struct kbase_context *kctx,
"true" : "false";
int as_no = as->number;
unsigned long flags;
+ const uintptr_t fault_addr = fault->addr;
/* terminal fault, print info about the fault */
dev_err(kbdev->dev,
- "GPU bus fault in AS%d at PA 0x%016llX\n"
+ "GPU bus fault in AS%d at PA %pK\n"
"PA_VALID: %s\n"
"raw fault status: 0x%X\n"
"exception type 0x%X: %s\n"
"access type 0x%X: %s\n"
"source id 0x%X\n"
"pid: %d\n",
- as_no, fault->addr,
+ as_no, (void *)fault_addr,
addr_valid,
status,
exception_type, kbase_gpu_exception_name(exception_type),
diff --git a/mali_kbase/mmu/backend/mali_kbase_mmu_jm.c b/mali_kbase/mmu/backend/mali_kbase_mmu_jm.c
index 3130b33..2442149 100644
--- a/mali_kbase/mmu/backend/mali_kbase_mmu_jm.c
+++ b/mali_kbase/mmu/backend/mali_kbase_mmu_jm.c
@@ -63,15 +63,16 @@ void kbase_gpu_report_bus_fault_and_kill(struct kbase_context *kctx,
u32 const exception_data = (status >> 8) & 0xFFFFFF;
int const as_no = as->number;
unsigned long flags;
+ const uintptr_t fault_addr = fault->addr;
/* terminal fault, print info about the fault */
dev_err(kbdev->dev,
- "GPU bus fault in AS%d at PA 0x%016llX\n"
+ "GPU bus fault in AS%d at PA %pK\n"
"raw fault status: 0x%X\n"
"exception type 0x%X: %s\n"
"exception data 0x%X\n"
"pid: %d\n",
- as_no, fault->addr,
+ as_no, (void *)fault_addr,
status,
exception_type, kbase_gpu_exception_name(exception_type),
exception_data,