summaryrefslogtreecommitdiffstats
path: root/tools/guest-diag/stack_sampler.sh
diff options
context:
space:
mode:
authorArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-19 09:57:48 -0400
committerArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-19 10:21:02 -0400
commitfc203ded15863dc343442b7bb5fd0c796c5af503 (patch)
treed2a1f91908ab5e14db5cf2241be3d6e0e07e84c9 /tools/guest-diag/stack_sampler.sh
parentcdfa86724a9cf6648f1e3b602f435b69976fb6c0 (diff)
downloadopen-iov-fc203ded15863dc343442b7bb5fd0c796c5af503.tar.gz
open-iov-fc203ded15863dc343442b7bb5fd0c796c5af503.zip
vgsp: fail4 r242-r248 - GRCE LOAD_INLINE_DATA cursor advance + H2D decode instruments
The probe/mallocecho H2D (cudaMemcpy H2D of a 64 KB device buffer) arrives as LOAD_INLINE_DATA method runs (op=3, subch=1, addr 0x1b4) carrying the payload inline in the push, split across several runs (and, depending on pool state, across several pushes of one sequence). The inline-write handler wrote every run at st.offset_out without advancing, so a multi-run upload kept only the last run's words and the readback page held deterministic junk (RAWA 16382 16383 8193...). Fix: a LOAD_INLINE_DATA run advances the destination cursor by the bytes it wrote (hardware FIFO semantics); consecutive runs of one upload now tile from the first destination. Verified (fresh boot, standard params): mallocecho d-afterH2D head 0 1 2 3 4 5 6 7 (was junk); ctaid_probe RAWA first8 0 1 2 3 4 5 6 7 (was 16382 16383 8193 8194...). Residual: the upload spans multiple runs/pushes and only the first 4095-word run lands today (bad=12289, tail zeros) - the remaining runs are still lost to the decoder's run-boundary handling (see sema-next-hdr captures). Instruments added (all gsp_sema_dbg-gated, bounded, session-reset): sema-pushall (de-windowed push decode trace with page_pa), sema-opadd, sema-copyent, sema-dmatrace (denied transfers), sema-bigrun (count>=1024 runs on len>=8192 pushes with cursor state), sema-lid-hdr, sema-skiprun, sema-mystery, sema-next-hdr (header after each big LID run). LDA/xfer-raw/stream dumps de-gated from ch->h_object!=0 so unidentified channels are visible.
Diffstat (limited to 'tools/guest-diag/stack_sampler.sh')
0 files changed, 0 insertions, 0 deletions