diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-09-30 06:13:26 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-09-30 06:13:26 -0400 |
| commit | 4c1eff4b6af581187b847bd61a9f846bafca2713 (patch) | |
| tree | 05e24b2c9cb8d4f3a89acaa8c54559ae9ee24e66 /tools/guest-diag | |
| parent | 06a424b52bf345cd463a2a41d1ac8213df987c02 (diff) | |
| download | open-iov-4c1eff4b6af581187b847bd61a9f846bafca2713.tar.gz open-iov-4c1eff4b6af581187b847bd61a9f846bafca2713.zip | |
sema-svc: decode GRCE inline-data DMA (small HtoD path)
The 256-byte cuMemcpyHtoD payload never appears in any CE push: CUDA
submits it on the compute channel as a compute-class DMA whose source is
the push's own inline data (LINE_LENGTH_IN=256, OFFSET_OUT=<device VA>,
LAUNCH_DMA=0x41, LOAD_INLINE_DATA 64 dwords, then the channel's
SET_REPORT_SEMAPHORE release). The CE-shaped decoder skipped the data run
(opcode 3) and no GR work ran at all.
- Decode NVC5C0 GRCE methods on subchannel 1 (LINE_LENGTH_IN, LINE_COUNT,
OFFSET_OUT/UPPER, LAUNCH_DMA) and the opcode-3 LOAD_INLINE_DATA run.
- svc_grce_inline_write resolves the destination VA through trusted
sources (pins, map, published page directories, targeted rm_mem
resolve), pins the page and writes into vidmem or guest RAM; budgeted
sema-grce logs name the target or report UNRESOLVED.
- cdt2 test binary gains CDT_CP_PAUSE / CDT_HP_PAUSE for live inspection
of the copy path; pushed by push_guest_tools.sh.
Diffstat (limited to 'tools/guest-diag')
| -rwxr-xr-x | tools/guest-diag/push_guest_tools.sh | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/tools/guest-diag/push_guest_tools.sh b/tools/guest-diag/push_guest_tools.sh index 18db05c..9a45fd3 100755 --- a/tools/guest-diag/push_guest_tools.sh +++ b/tools/guest-diag/push_guest_tools.sh @@ -24,6 +24,7 @@ push_b64 "$HERE/guest_engines.c" /tmp/ge.c push_b64 "$HERE/rmq_probe.c" /tmp/rmqp.c push_b64 "$HERE/ioctl_trace.c" /tmp/iot.c push_b64 "$REPO/tools/test/cuda_drv_test.c" /tmp/cdt.c +push_b64 "$REPO/tools/test/cuda_drv_test2.c" /tmp/cdt2.c push_b64 "$HERE/dumpctx.py" /tmp/dumpctx.py push_b64 "$HERE/trkinfo.py" /tmp/trkinfo.py push_b64 "$HERE/bp999.py" /tmp/bp999.py @@ -66,4 +67,5 @@ echo "[*] compiling in guest..." gcc -O1 -w -o /tmp/ge /tmp/ge.c && \ gcc -O1 -w -o /tmp/rmqp /tmp/rmqp.c && \ gcc -O1 -w -o /tmp/iot /tmp/iot.c && \ -gcc -O1 -o /tmp/cdt /tmp/cdt.c -ldl && echo BUILD_OK" +gcc -O1 -o /tmp/cdt /tmp/cdt.c -ldl && \ +gcc -O1 -o /tmp/cdt2 /tmp/cdt2.c -ldl && echo BUILD_OK" |
