From 71489ff832717592f2d4a23fea29d69fee5bee42 Mon Sep 17 00:00:00 2001 From: Arthur Hanson Rasmusson Date: Mon, 12 Oct 2026 05:09:17 -0400 Subject: vgsp-sema: re-arm ring/push-buffer discovery latches on channel registration; scanner streams anonymous high-VA buffers Second-client wedge fix: a new GSP session re-registers the same channel handles/ranks, but the per-rank one-shot ring/push-buffer discovery latches stayed set from the previous session, so the new session's ring was never re-autopinned (ring_auto=0 pb=0/0, nomap growing) and the guest spun in its channel-creation wait. svc_chan_rearm_rank() clears the latches on every channel registration; all post-fix cycles launch the second client. Scanner: guest_pin_stream.py now streams the client's anonymous high-VA mappings (cudaMalloc buffers were skipped by the old len(parts)<6 check), so the host can learn their pages. Diagnostics: PT-window lines, per-window first words, post-OK qmdwin w48..59. Remaining: the fill-time svc_ipin_lookup miss for the second client's a/b/c pins (they exist in the pin log but are not seen at fill time) - next session. --- tools/site/pages/Documentation.wiki | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'tools/site/pages/Documentation.wiki') diff --git a/tools/site/pages/Documentation.wiki b/tools/site/pages/Documentation.wiki index 79f2cec..cab7408 100644 --- a/tools/site/pages/Documentation.wiki +++ b/tools/site/pages/Documentation.wiki @@ -24,7 +24,7 @@ This is the index of the Open-IOV wiki. If you are new, read '''[[Project Status * [[CUDA Userspace Driver]] — the libcuda.so deep dive * [[The Execution Frontier]] — the GR compute-launch chain and its current wall -== Firmware interoperability == +== Firmware and reverse engineering == * [[GSP 570.144W Firmware Analysis]] — how the 28.5 MB image was decompiled and mapped * [[Address Reference]] — firmware-side address tables * [[risc-v-gsp-rm-debugger]] — the firmware runtime workbench (hooks, watchpoints, sessions) -- cgit v1.2.3