summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-25 14:11:01 -0400
committerArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-25 14:11:01 -0400
commit8e0da192d2ee708ff44b7e69da8c6ca8bf89e3e1 (patch)
tree7f1eeaab82340dad3abe61424115dab74fd0cc3c /tools
parent74c59db9c701a0e14d7210edfef9d13c086dcf87 (diff)
downloadopen-iov-8e0da192d2ee708ff44b7e69da8c6ca8bf89e3e1.tar.gz
open-iov-8e0da192d2ee708ff44b7e69da8c6ca8bf89e3e1.zip
wall2 session 102: fd sampler found no transient (bursty reader); no nvidia debugfs; memdesc paths ranked (content-locate the channel buffer by scrub method shapes / scrubber sema-push decodes / narrower burst sampling)
Diffstat (limited to 'tools')
-rw-r--r--tools/guest-diag/wall2/README-session77.md17
1 files changed, 17 insertions, 0 deletions
diff --git a/tools/guest-diag/wall2/README-session77.md b/tools/guest-diag/wall2/README-session77.md
index 92f3bc3..92d2986 100644
--- a/tools/guest-diag/wall2/README-session77.md
+++ b/tools/guest-diag/wall2/README-session77.md
@@ -833,3 +833,20 @@ every ~0.2 s in a loop around the burst (or perf trace -s during a burst);
the auth-tag sema value (advance past nextPut) via the RAM file; (c) the
loop timeout (gpuCheckTimeout) may eventually error the client - the write
must land first.
+
+**29. Session 102: fd-sampler miss, no nvidia debugfs; the memdesc hunt narrows.**
+The 0.15 s /proc/1549/fd sampler over 20 s caught NO transient path (the
+open/read(299)/close reader is bursty or dormant between bursts; the static
+fds are /dev/nvidiactl, /dev/nvidia0, /dev/nvidia-modeset, a socket, the
+GLCache .toc/.bin pair, and a memfd "allocation fd"). No nvidia debugfs
+tree exists in the guest. Remaining ranked paths to the auth-tag sema
+(memdesc + finishPayloadOffset + 4): (1) content-locate the scrubber's
+channel buffer by its method stream (the C5B5/C56F shapes: SET_OBJECT
+0xc5c0/0xc5b5, headers 0x200121ed/0x200120a9 observed in the session-78
+window dumps) and read/write the sema inside; (2) the scrubber channel's
+own sema-push decodes (its pushes carry the auth-tag VA = pbGpuVA +
+authTagBufSemaOffset; grep the boot's sema-pushall for the scrubber
+channel id and read the rel= VA - then PDB-walk it); (3) sample the fd
+burst narrower (0.02 s) right after a client restart when the burst is
+hot. The service-side ideal: on detecting the scrubber channel, resolve
+its channel buffer and pre-advance the auth-tag sema (a durable fold).