summaryrefslogtreecommitdiffstats
path: root/userspace/cuda/570.144/docs
diff options
context:
space:
mode:
authorArthur Hanson Rasmusson <arthur@vgpu.io>2026-09-23 12:11:04 -0400
committerArthur Hanson Rasmusson <arthur@vgpu.io>2026-09-23 12:11:04 -0400
commitf874d709e5a45d63c8ee9ab6b0300195aa5d20a5 (patch)
tree2d07208f789e402686ac960e5ad7456b6fd21cfd /userspace/cuda/570.144/docs
parentae18e08d02500579f084616874d8f2ae57f8281b (diff)
downloadopen-iov-f874d709e5a45d63c8ee9ab6b0300195aa5d20a5.tar.gz
open-iov-f874d709e5a45d63c8ee9ab6b0300195aa5d20a5.zip
userspace/cuda: add CUDA userspace driver analysis, tooling and name maps
Add the analysis of the NVIDIA CUDA userspace driver used by Open-IOV VMs: * docs/01-08: architecture (layers, object model, threads, sync, memory, channels, launch), build and execution model, the driver/kernel/GPU interface contract, virtualization approaches, the 570.144 decompilation map with the corrected libcuda crash path and the current engine-topology blocker, tooling, and a version-upgrade playbook. * tools/: version-agnostic toolchain - stdlib ELF/interface toolkit (exports, unwind-table function map, wrapper resolution, version delta, crash address decode), callgraph walker, corpus annotator, and Ghidra analysis/decompilation/name-map scripts with resumable parallel drivers. * 570.144/annotations/: our name map (exports + resolved wrappers + verified internals) and subsystem index, tracked so naming work accumulates. * READ-ME-FIRST.md: reading guide with the fast lookup recipes. The full decompiled corpus and annotated corpus stay untracked (vendor- derived, gitignored under the version run/ tree).
Diffstat (limited to 'userspace/cuda/570.144/docs')
-rw-r--r--userspace/cuda/570.144/docs/ANALYSIS-cuctxcreate-segv.md13
1 files changed, 13 insertions, 0 deletions
diff --git a/userspace/cuda/570.144/docs/ANALYSIS-cuctxcreate-segv.md b/userspace/cuda/570.144/docs/ANALYSIS-cuctxcreate-segv.md
index 9a15b51..db38802 100644
--- a/userspace/cuda/570.144/docs/ANALYSIS-cuctxcreate-segv.md
+++ b/userspace/cuda/570.144/docs/ANALYSIS-cuctxcreate-segv.md
@@ -1,5 +1,18 @@
# libcuda 570.144 `cuCtxCreate` segfault - analysis (2026-09-23)
+> **Status: historical (2026-09-23 PART 9).** The segfault described here was
+> fixed in PART 10 (the RM allocation reply now echoes the request parameters,
+> which prevents a 16-byte class-params copy-back from zeroing the caller's
+> saved frame pointer). The current blocker is the missing async copy engine in
+> the emulated engine list (`cuCtxCreate` returns `999`). For the corrected,
+> current analysis see
+> [`../../docs/05-570.144-decompilation.md`](../../docs/05-570.144-decompilation.md)
+> and [`../../READ-ME-FIRST.md`](../../READ-ME-FIRST.md). The runtime
+> observations below (gdb traces, ioctl sequences) remain valid, and note that
+> the decompiled files it references were produced at the wrong Ghidra image
+> base (see PART 9's own address note and `../../docs/05` section 1.1).
+
+
First analysis note for the CUDA userspace driver under Open-IOV. Companion to
`../README.md` (tools) and the host/guest A/B harness (`tools/cuda-ab/`).