summaryrefslogtreecommitdiffstats
path: root/debug/risc-v-gsp-rm-vm/tests/test_gmmu_walk.py
diff options
context:
space:
mode:
authorArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-12 13:18:37 -0400
committerArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-12 13:18:37 -0400
commitde595dc64d8e3a01a95282bacc5bc987510d7c5e (patch)
tree26e1e9f7dd2159a941f96ee199c0aee6a344036b /debug/risc-v-gsp-rm-vm/tests/test_gmmu_walk.py
parentf1a5e17452580ee50b3fb0ab74bc025002cf30b8 (diff)
downloadopen-iov-de595dc64d8e3a01a95282bacc5bc987510d7c5e.tar.gz
open-iov-de595dc64d8e3a01a95282bacc5bc987510d7c5e.zip
vgsp-sema: hold GR launches whose device argument pointers do not translate; derive the CE vmap pairing per allocation
Two second-client zeros/stall countermeasures: - svc_gr_data_fill now reports when a launch carries high (device-space) argument pointers and none of them resolves through any trusted source. svc_gr_request refuses to forward such a launch and leaves the capture unconsumed; the pump holds the ring entry for one bounded window per entry (gsp_sema_gr_grace_ms) and retries it, so a translation that appears a pass later (scanner pin, published directory, learned pair) is used instead of executing the kernel against unresolved pointers. On window expiry the entry is consumed exactly as before (bounded zeros, never a hang). Bounded per-session fill diagnostics name the source that serves each candidate (ipin/pin/lat/map/vas/disc/win) and dump the published vaspace walk results for misses. - The CE push-buffer kcore chain resolver derives its vmap page offset per allocation instead of using a fixed shift: the rm_mem size is read from its real offset (570.144 layout) and paired with the vmallocinfo area page count, so a leading header page is only skipped when it actually exists. With an unreadable size the two candidate offsets are content-probed with the host's method-stream plausibility test and an ambiguous result keeps the status-quo pairing. This removes the off-by-one that fed wrong push pages to the pump (content-rescue crawl).
Diffstat (limited to 'debug/risc-v-gsp-rm-vm/tests/test_gmmu_walk.py')
0 files changed, 0 insertions, 0 deletions