diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-09-23 12:11:10 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-09-23 12:11:10 -0400 |
| commit | 13f46e60760cc0855484cc69de913ea34f55c24f (patch) | |
| tree | df67eb2dfc5afd2c56845e514624a4842152a1f1 /docs/01-orientation | |
| parent | 21b8ebc9db1d0ae649d6406087ea22b54e3b5775 (diff) | |
| download | open-iov-13f46e60760cc0855484cc69de913ea34f55c24f.tar.gz open-iov-13f46e60760cc0855484cc69de913ea34f55c24f.zip | |
docs: refresh status, supersede stale material, link the CUDA analysis
* Status now matches the live state: guest driver probe and nvidia-smi work;
cuInit/device queries work; cuCtxCreate returns 999 because the emulated
engine list is missing the async copy engine (COPY14). The userspace
libcuda segfault is recorded as solved, with its mechanism (an RM
allocation reply must echo request parameters; zeroing them corrupted the
caller's saved frame pointer).
* Correct the emulation claims: only a subset of RM controls are
special-cased; the rest return a success reply with zeroed parameters whose
consumed fields are still being corrected; allocation replies are coherent
but no server-side object model exists.
* Add the eight-point emulation checklist and reply-fidelity ladder as
explicit gates, documented in userspace/cuda and linked from the
architecture, implementation and operations docs.
* Fix operational errors: build/test commands, module load order, mdev type
names, LFS references, debugfs claims, in-repo firmware claims, CI claims,
portability matrix (guest status, config layout, userspace driver facts).
* Mark historical material: one superseded banner per legacy document with a
pointer to its replacement; STATE.md marked as a 2026-09-21 snapshot.
* Wiki: fix the index, add status banners and in-place factual corrections
(msgq transport vs legacy mailbox, BAR definitions, error statuses,
migration, glossary), and note the archived 2023 imports.
Diffstat (limited to 'docs/01-orientation')
| -rw-r--r-- | docs/01-orientation/01-purpose-and-scope.md | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/docs/01-orientation/01-purpose-and-scope.md b/docs/01-orientation/01-purpose-and-scope.md index eab63bc..c1232f3 100644 --- a/docs/01-orientation/01-purpose-and-scope.md +++ b/docs/01-orientation/01-purpose-and-scope.md @@ -131,13 +131,18 @@ document: * **Working today**: the virtual device, the GSP boot handshake, the RPC transport, the resource-manager emulation surface the guest driver needs to - probe and enumerate, guest `nvidia.ko` and `nvidia-smi`, and the early UVM - initialization path. -* **Needs improvement**: GPU work forwarding (the reason CUDA kernels do not - yet run), the memory/page-table model, Windows guest support, non-KVM - hypervisors, and performance instrumentation. Each of these is tracked with - explicit "known-unknowns" in - [`../04-implementation/01-known-knowns-and-unknowns.md`](../04-implementation/01-known-knowns-and-unknowns.md). + probe and enumerate, guest `nvidia.ko` and `nvidia-smi`, and CUDA user-space + startup through `cuInit` / `cuDeviceGet`. +* **Needs improvement**: engine topology and reply fidelity first — context + creation returns `rc=999` (`CUDA_ERROR_UNKNOWN`) because the emulated engine + list lacks the async copy engine (`COPY14`) and some consumed reply fields + are still generic fallbacks — then GPU work forwarding (the reason CUDA + kernels do not yet run), the memory/page-table model, Windows guest support, + non-KVM hypervisors, and performance instrumentation. Each of these is + tracked with explicit "known-unknowns" in + [`../04-implementation/01-known-knowns-and-unknowns.md`](../04-implementation/01-known-knowns-and-unknowns.md); + for the CUDA analysis area, start at + [`../../userspace/cuda/READ-ME-FIRST.md`](../../userspace/cuda/READ-ME-FIRST.md). ## 8. Guiding principles |
