From 534131933ef24d602314281573db4ef16cc08a93 Mon Sep 17 00:00:00 2001 From: Arthur Hanson Rasmusson Date: Wed, 23 Sep 2026 11:46:33 -0400 Subject: kernel: coherent GSP-RM replies for engine-context creation - GSP_RM_ALLOC: echo the request payload back with status forced to NV_OK. The kernel driver copies the reply params over the caller's params buffer using the class-expected size, so a zeroed reply smashed libcuda's stack (SIGSEGV at the engine-registration continuation); echoing makes the copy-back idempotent. - CE_GET_PHYSICAL_CAPS / CE_GET_ALL(_PHYSICAL)_CAPS: report sysmem, P2P and BL copy caps and mark the GR-synchronous CE (GRCE, COPY0). Without a GRCE the client's context walk ends with an empty secondary-engine record and the engine RM alloc is issued with class 0 (rejected -> cuCtxCreate fails). - TU104 engine table: CE0 shares the GR PBDMA ids (the driver's GR/GRCE runqueue validation requires it), plus an entry for the async copy engine (COPY14) advertised in the GSP static info engine caps. - tools/guest-diag/ioctl_trace: decode the RM status fields of alloc, control and free so the first failing driver call is visible in traces. gitignore: keep the CUDA analysis scratch tree (incl. WORKING-HERE.md) local. --- .gitignore | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to '.gitignore') diff --git a/.gitignore b/.gitignore index 0142c8e..3f9cf38 100644 --- a/.gitignore +++ b/.gitignore @@ -116,14 +116,19 @@ tools/debug/nv2080_ctrl vgcore.* userspace/tests/test_vgpu_userspace -# Maintainer notes: study index (never commit) +# Local-only material (never commit). ARCHAEOLOGY.md - -# Local analysis notes adjacent to public analysis (never commit). -# Public analysis refers to them by name only. -**/LOCAL-ANALYSIS.md **/PRIVATE-*.md +# CUDA analysis area: `userspace/cuda/*/run/` is the per-version scratch +# tree: extracted vendor binaries, Ghidra projects, decompiled corpora and +# annotated corpora - all vendor-derived or huge, so the whole tree is +# excluded regardless of extension. +userspace/cuda/run/ +userspace/cuda/*/run/ +# per-area coordination scratch (local only) +userspace/cuda/WORKING-HERE.md + # generated at runtime by tools/guest-diag/vmcycle.sh tools/guest-diag/launch_qemu_rootport.run.sh -- cgit v1.2.3