summaryrefslogtreecommitdiffstats
path: root/kernel/gsp_sema_service.h
diff options
context:
space:
mode:
authorArthur Hanson Rasmusson <arthur@vgpu.io>2026-09-28 15:20:04 -0400
committerArthur Hanson Rasmusson <arthur@vgpu.io>2026-09-28 15:20:04 -0400
commit042b8953823190623452c0539d1b6807450aa67a (patch)
treed009b3e6bcbe934d93fc794768fd7c53b3bd60bc /kernel/gsp_sema_service.h
parent41520c6dbd39e0457dcf9bafa467f9c2827a5944 (diff)
downloadopen-iov-042b8953823190623452c0539d1b6807450aa67a.tar.gz
open-iov-042b8953823190623452c0539d1b6807450aa67a.zip
sema: add walk_probe - trace the page-table walk for a VA
New module parameter walk_probe <va> runs the recorded-va-space walks and the discovered-directory walk directly (pin/lat/pair map bypassed) with per-level tracing, and prints the result of each. This separates 'the page tables are not walkable' from 'the VA->PA pair map already answers' when a translation is missing. Baseline on a live boot: root PDB entries are zero (L0 e=0 idx=0) so the writes UVM issues into the level pages have no parent entry yet.
Diffstat (limited to 'kernel/gsp_sema_service.h')
-rw-r--r--kernel/gsp_sema_service.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/kernel/gsp_sema_service.h b/kernel/gsp_sema_service.h
index f652ffd..e67f0ba 100644
--- a/kernel/gsp_sema_service.h
+++ b/kernel/gsp_sema_service.h
@@ -57,6 +57,7 @@ void gsp_sema_service_vaspace_del(u32 h_vaspace);
int gsp_sema_service_start(void);
void gsp_sema_service_stop(void);
int gsp_sema_service_probe(u64 gpu_va, u32 count);
+int gsp_sema_service_walk_probe(u64 gpu_va);
int gsp_sema_service_dump_channels(void);
int gsp_sema_service_add_map(u64 gpu_va, u64 pa, u64 len, u32 ap);
void gsp_sema_service_doorbell(u32 token);