From fade84f8b5b781d29daad40699d07928dedea550 Mon Sep 17 00:00:00 2001 From: Arthur Hanson Rasmusson Date: Wed, 23 Sep 2026 13:48:07 -0400 Subject: docs: merge the legacy flat documents, add the CUDA deep-dive and link checks * Merge and remove the pre-reboot flat documents, preserving their still-useful material in the structured tree: debugging workflows and the EPT-livelock case study (05-operations/02), performance microbenchmarks and A/B methodology (05-operations/01), the version-upgrade runbook (05-operations/02 section 4, with corrected host/guest framing), kernel-code pitfalls (07-developers) and the OpenRM build/load order (03-architecture/06 section 7). The remaining legacy files were verified redundant and removed. * docs/README now records where each migrated topic lives. * Portability: the config YAML files are called out as design targets that no code reads yet, with what adding support actually requires today. * Getting started: the OpenRM step is marked optional (native vGPU-management workflows only; the emulated path uses the distro driver). * tools docs: rmtool/rmtop marked as planned, pointing at the implemented tools/rmq subset. * wiki: new CUDA-Userspace-Driver deep-dive page (public-safe, links the canonical userspace/cuda analysis) and index update. * scripts/check-docs-links.py plus a CI step so relative links cannot rot. * STATE.md references to removed documents repointed. --- STATE.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'STATE.md') diff --git a/STATE.md b/STATE.md index 7cb6fc6..9ba13fc 100644 --- a/STATE.md +++ b/STATE.md @@ -30,7 +30,7 @@ Guest driver **570.144 stock runfile installed** in the VM. The fixed module is built and pushed; it loads after the next host reboot (a leaked `gsp_emu` kthread from the pre-fix remove path pins the old module — rmmod would oops). Post-reboot: guest `nvidia.ko` probe → `nvidia-smi` → teardown -regression → unit test → CUDA validation (`docs/DEBUGGING.md` §5 checklist). +regression → unit test → CUDA validation (`docs/05-operations/02-debugging-and-maintenance-workflows.md`; the historical checklist is summarised there). ## Recently solved bugs @@ -56,11 +56,11 @@ regression → unit test → CUDA validation (`docs/DEBUGGING.md` §5 checklist) ## Known open bugs / limitations - Guest `nvidia.ko` end-to-end probe not yet validated (fixed module loads - post-reboot; checklist in `docs/DEBUGGING.md` §5) + post-reboot; checklist in `docs/05-operations/02-debugging-and-maintenance-workflows.md`) - **Memory-model gap**: guest VRAM (BAR1) maps directly to physical BAR1 gpa, but `gsp_rpc_alloc_emul` services ALLOC with host system pages — the two are not unified; must be resolved before CUDA/DMA-heavy workloads - (`docs/GSP_EMULATION_ARCHITECTURE.md` §3) + (`docs/03-architecture/06-host-module-and-hybrid-model.md`) - BAR_TRAP / MIGRATE RPCs fail fast with `-ENOTSUPP` in emulation mode (guest's normal BAR access is direct MMIO; real handlers TODO) - `gsp_emu_process_rpc()` doesn't bump stats counters (only the kthread @@ -78,7 +78,7 @@ regression → unit test → CUDA validation (`docs/DEBUGGING.md` §5 checklist) - Windows guest not yet validated (automation scaffolding present) - MSI-X emulation has dual stores (guest-visible `bar0_shadow` table vs `bar_emul_ctx.msix_table[]` used by the currently-unused trap path) — - documented in `docs/GSP_EMULATION_ARCHITECTURE.md`; harmless with the + documented in `docs/03-architecture/06-host-module-and-hybrid-model.md`; harmless with the direct-mmap design ## Reproducibility notes -- cgit v1.2.3