diff options
Diffstat (limited to 'docs/03-architecture')
6 files changed, 18 insertions, 18 deletions
diff --git a/docs/03-architecture/01-system-overview.md b/docs/03-architecture/01-system-overview.md index fa328ae..8205154 100644 --- a/docs/03-architecture/01-system-overview.md +++ b/docs/03-architecture/01-system-overview.md @@ -56,7 +56,7 @@ GUEST ════════╪════════════════════════════════════════════════════════════════ HYPERVISOR (KVM/Xen/...) VFIO mdev transport + IOMMU isolation │ -HOST MODULE open-iov-vfio.ko +HOST MODULE vgsp.ko ├─ virtual device: config space, BAR0/BAR1/BAR3 windows, MSI-X ├─ emulation core: GSP boot + GSP-RM (RPC msgq, controls, objects, events) ├─ memory model: guest RAM access, VA↔PA maps, VRAM backing @@ -71,7 +71,7 @@ REAL HARDWARE (engines, memory, interrupts) ## 3. Host module architecture -`open-iov-vfio.ko` is a **VFIO mediated-device (mdev) driver**. It registers a +`vgsp.ko` is a **VFIO mediated-device (mdev) driver**. It registers a parent on the physical GPU and exposes virtual GPU types; each `mdev` instance is one virtual GPU for one VM. diff --git a/docs/03-architecture/06-host-module-and-hybrid-model.md b/docs/03-architecture/06-host-module-and-hybrid-model.md index 0dbc89a..7f670d7 100644 --- a/docs/03-architecture/06-host-module-and-hybrid-model.md +++ b/docs/03-architecture/06-host-module-and-hybrid-model.md @@ -1,6 +1,6 @@ # The Host Module and the Hybrid Model -> `open-iov-vfio.ko` in detail: the virtual device, the emulation engine, the +> `vgsp.ko` in detail: the virtual device, the emulation engine, the > memory model, and how work will be forwarded. This is the "where the code > lives" document. @@ -15,7 +15,7 @@ └────┬──────────────────────────────────────────────┘ │ ┌────┴───────────────────────────────────────────────────────────────┐ - │ open-iov-vfio.ko │ + │ vgsp.ko │ │ virtual device ── emulation core ── memory model ── work path │ └────┬─────────────────────────────────────┬─────────────────────────┘ │ module-owned device + real GSP │ (future) vendor-managed @@ -249,7 +249,7 @@ operations stays a development bridge, not the data plane. ## 6. Debug tooling in the module The module exposes debug parameters (writes to -`/sys/module/open_iov_vfio/parameters/*`) that make the guest's memory and the +`/sys/module/vgsp/parameters/*`) that make the guest's memory and the emulated device inspectable without rebuilding: | Parameter | Purpose | @@ -290,7 +290,7 @@ mismatch. Their workflows are documented in ## 7. Build and symbol contracts -* `open-iov-vfio.ko` exports the `nvidia_vgpu_vfio_*` interface +* `vgsp.ko` exports the `nvidia_vgpu_vfio_*` interface (`nvidia_vgpu_vfio_probe/remove`, ops get/set, mdev parent registration) for hosts that want to pair our device with the NVIDIA OpenRM host modules. * When NVIDIA's OpenRM modules are built from source, they must be built with diff --git a/docs/03-architecture/07-driver-lifecycle-field-guide.md b/docs/03-architecture/07-driver-lifecycle-field-guide.md index 73b007e..3a85da6 100644 --- a/docs/03-architecture/07-driver-lifecycle-field-guide.md +++ b/docs/03-architecture/07-driver-lifecycle-field-guide.md @@ -45,7 +45,7 @@ terminate. **Log signature:** ``` -gsp-resman-vfio: GSP-BOOT: ... trigger auto-cleared ... +vgsp: GSP-BOOT: ... trigger auto-cleared ... ``` ## 3. Static configuration @@ -62,7 +62,7 @@ layout, engine list, vGPU-friendly VF values). **Log signature:** ``` -GSPRM: GET_GSP_STATIC_INFO → ... +vgsp-rm: GET_GSP_STATIC_INFO → ... ``` ## 4. Message queues @@ -81,8 +81,8 @@ byte-stream-based**: each message is one element and may span pages. **Log signature:** ``` -gsp-resman-vfio: libos region[i] id8=... pa=... size=... -gsp-resman-vfio: queue args sharedPA=... ptes=... cmdOff=... statOff=... +vgsp: libos region[i] id8=... pa=... size=... +vgsp: queue args sharedPA=... ptes=... cmdOff=... statOff=... ``` ## 5. Resource-manager initialization (the control battery) @@ -113,7 +113,7 @@ fallback). Representative controls: **Log signature:** ``` -GSPRM: GSP_RM_CONTROL cmd=0x... hClient=0x... hObject=0x... paramsSize=... +vgsp-rm: GSP_RM_CONTROL cmd=0x... hClient=0x... hObject=0x... paramsSize=... ``` ## 6. Object creation @@ -150,7 +150,7 @@ tree reconstructible from `dmesg`. **Log signature:** ``` -GSPRM: GSP_RM_ALLOC class=0x... paramsSize=... hClient=... hParent=... hObject=... +vgsp-rm: GSP_RM_ALLOC class=0x... paramsSize=... hClient=... hParent=... hObject=... ``` ## 7. UVM registration (the wall we climbed) diff --git a/docs/03-architecture/08-physical-gpu-integration.md b/docs/03-architecture/08-physical-gpu-integration.md index 532cd77..6e13e7b 100644 --- a/docs/03-architecture/08-physical-gpu-integration.md +++ b/docs/03-architecture/08-physical-gpu-integration.md @@ -367,7 +367,7 @@ per-context scheduling. Tenant policy and fairness are a later layer on top. release the RPC runs once (only when the full boot stage ran) before the existing quiesce/FWSEC teardown; without a full boot the fail-safe behaviour is unchanged. A write-only debugfs trigger - (`open-iov-vfio/gsp-phys-unload-rpc`, write "1") lets a live claimed + (`vgsp/gsp-phys-unload-rpc`, write "1") lets a live claimed session test the shutdown without touching WPR2. All of it is inert unless the full boot stage ran. **Live-verified (2026-10-01):** the unload RPC shuts the server down (GSP-RM processor suspended in ~220 ms, handoff bits @@ -375,7 +375,7 @@ per-context scheduling. Tenant policy and fairness are a later layer on top. reboot on every clean cycle. * **Update (2026-10-01) — rung 4c slice 1 implemented (build-only):** for the next cycle a host resource-manager static-info probe is available: the - write-only debugfs file `open-iov-vfio/gsp-phys-rm-probe` (write "1", only + write-only debugfs file `vgsp/gsp-phys-rm-probe` (write "1", only when GSP-RM init-done was observed) sends `GET_GSP_STATIC_INFO` over the real command queue and decodes the server's static configuration (internal handles, split-VA flag, BAR1/2 PDE bases, framebuffer geometry, engine diff --git a/docs/03-architecture/09-full-system-picture.md b/docs/03-architecture/09-full-system-picture.md index 3c15830..97b4617 100644 --- a/docs/03-architecture/09-full-system-picture.md +++ b/docs/03-architecture/09-full-system-picture.md @@ -38,7 +38,7 @@ flowchart TB IOMMU["IOMMU / IOMMUFD<br/>per-VM DMA address spaces"] end - subgraph MOD["open-iov-vfio.ko - the only host component"] + subgraph MOD["vgsp.ko - the only host component"] VDEV["Virtual device<br/>config space, BAR0/1/3, MSI-X"] EMU["Emulation core<br/>GSP boot + GSP-RM RPC + objects"] MEMM["Memory model<br/>VA to PA, pins, VRAM shadow, page tables"] @@ -207,7 +207,7 @@ flowchart LR VRS["VRAM objects - BAR1 aperture view"] end - subgraph MM["open-iov-vfio.ko memory model"] + subgraph MM["vgsp.ko memory model"] DISC["Discovery<br/>structure walk + content scan + pins"] PMAP["VA to PA map<br/>page-granular, merge rebuilds"] SHAD["BAR1 VRAM shadow"] @@ -362,7 +362,7 @@ flowchart TB T2["VM B - mdev 2"] T3["VM C - mdev N"] end - subgraph MOD["open-iov-vfio.ko"] + subgraph MOD["vgsp.ko"] Q1["Emulation context 1<br/>BARs, queues, counters"] Q2["Emulation context 2"] Q3["Emulation context N"] diff --git a/docs/03-architecture/12-host-vf-acceleration-future-goal.md b/docs/03-architecture/12-host-vf-acceleration-future-goal.md index 298b329..5a331c8 100644 --- a/docs/03-architecture/12-host-vf-acceleration-future-goal.md +++ b/docs/03-architecture/12-host-vf-acceleration-future-goal.md @@ -14,7 +14,7 @@ Give a process **running on the host OS** GPU acceleration through the open-iov device model: bind the host's stock NVIDIA kernel driver to a virtual function -or virtual device presented by `open-iov-vfio.ko`, so that host userspace +or virtual device presented by `vgsp.ko`, so that host userspace (`libcuda`, `nvidia-smi`, CUDA applications) consumes the mediated device the way a guest does, with no VM in between. |
