diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-08 11:07:42 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-08 11:07:42 -0400 |
| commit | d3e67a9e9f9db2f5f4b5d5d04635b61ac6c566aa (patch) | |
| tree | b58b52df758bea0694a2e7cc05aa46bcf7b6b7c3 /tools/cuda-bridge/check_module_layout.py | |
| parent | 54bc80ae33addabc73a5bc1b0881423a63bc9862 (diff) | |
| download | open-iov-d3e67a9e9f9db2f5f4b5d5d04635b61ac6c566aa.tar.gz open-iov-d3e67a9e9f9db2f5f4b5d5d04635b61ac6c566aa.zip | |
vgsp-sema: kernel-native pool release translation + starvation telemetry (ISSUE-0001)
svc_pool_pa_resolve() could translate an UVM pool/waiter page only from
watcher pins, the read-back cache, the self-discovered directory and a
targeted rm_mem scan. When the userspace watcher races a boot and the
self-discovered directory has no entry yet, a starved completion release
sits in svc_pending[] forever (p13-r4: applied frozen at 89/90, gr_rel=0),
the guest tracker never wakes and CUDA blocks at DEVICE. Add:
- svc_walk_vaspaces() (the driver-published page directories - the walker
svc_lookup_trusted always used, previously absent here);
- a final proof-gated svc_lookup_trusted() fallback (also the only path
that triggers svc_pd_discover()).
Both read-back proven like every other source. Plus per-entry starvation
telemetry (tries + bounded logs) so a future stall names the exact va.
Diffstat (limited to 'tools/cuda-bridge/check_module_layout.py')
0 files changed, 0 insertions, 0 deletions
