diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-02 15:13:06 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-02 15:13:06 -0400 |
| commit | 4bb8550a72597ec098c6d62a75006a0aba61972e (patch) | |
| tree | bd0ec74c26ff056251052a5e1ba0b59d14fb1f6a /scripts/stack_manager.sh | |
| parent | 8b491c4e7ebde76c17faddaad47f92898d6c97de (diff) | |
| download | open-iov-4bb8550a72597ec098c6d62a75006a0aba61972e.tar.gz open-iov-4bb8550a72597ec098c6d62a75006a0aba61972e.zip | |
kernel: GR context-promote bisection modes 4-17 and server-managed-ctxbuf registry variant; complete vgsp rename; docs/tooling refresh
- gsp_phys_booter: GR promote bisection modes 4-17 (two-phase zero-field VA,
batched entries, hVirtMemory, bare VA, KMD SKIP_CTXBUFFER_ALLOC channel,
old-interface GPU_INITIALIZE_CTX, FBMEM context buffer, UVM-faithful PA-only,
PATCH/PM auxiliary promotes, server-managed no-promote path); PATCH/PM
geometry queries and buffers; pre-boot SET_REGISTRY profile selection
- gsp_phys_gpu: gsp_phys_rmcall_gr_promote clamp 0..17 and gsp_phys_srv_ctxbuf
parameter; registry image variant with RMSetClientRMAllocatedCtxBuffer=0
- vgsp rename across kernel, scripts, tools and docs (module vgsp.ko,
/sys/kernel/debug/vgsp/, vgsp-<subsystem>: log prefixes)
- risc-v-gsp-rm-debugger user-facing rename and docs/CI refresh; guest-diag
tool updates; README/SBOM/install/Makefile sync
Live status: CE ladder and P6 guest-copy forwarding green; GR engine context
commit still open (all promote shapes accepted or cleanly refused; the channel
stays CTXNOTVALID) - see Handoff-vGPU-IO.md Addendum 21 (local).
Diffstat (limited to 'scripts/stack_manager.sh')
| -rwxr-xr-x | scripts/stack_manager.sh | 40 |
1 files changed, 20 insertions, 20 deletions
diff --git a/scripts/stack_manager.sh b/scripts/stack_manager.sh index 5598817..294a0ee 100755 --- a/scripts/stack_manager.sh +++ b/scripts/stack_manager.sh @@ -6,7 +6,7 @@ set -euo pipefail BASE_DIR="${OPEN_IOV_ROOT:-$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)}" NVIDIA_KO="$BASE_DIR/nvidia-open-gpu-kernel-modules/kernel-open/nvidia.ko" -VFIO_KO="$BASE_DIR/kernel/open-iov-vfio.ko" +VFIO_KO="$BASE_DIR/kernel/vgsp.ko" FIRMWARE_PATH="$BASE_DIR/firmware/57X-GSP/570.144/gsp-570.144.fwimage.bin" FIRMWARE_DEST="/lib/firmware/gsp-570.144.fwimage.bin" @@ -32,10 +32,10 @@ log_err() { echo -e "${color_red}[ERROR]${color_nc} $*"; } # ============================================================ cmd_build_kernel() { - log_info "Building open-iov-vfio.ko (kernel module)..." + log_info "Building vgsp.ko (kernel module)..." cd "$BASE_DIR" make kernel - log_ok "open-iov-vfio.ko built" + log_ok "vgsp.ko built" } cmd_build_nvidia() { @@ -101,12 +101,12 @@ cmd_load_open_iov() { log_err "Missing $VFIO_KO - run 'build' first" return 1 fi - if ! lsmod | grep -q "^open_iov_vfio "; then - log_info "Loading open-iov-vfio.ko..." - sudo insmod "$VFIO_KO" || { log_err "Failed to load open-iov-vfio.ko"; return 1; } - log_ok "open-iov-vfio.ko loaded" + if ! lsmod | grep -q "^vgsp "; then + log_info "Loading vgsp.ko..." + sudo insmod "$VFIO_KO" || { log_err "Failed to load vgsp.ko"; return 1; } + log_ok "vgsp.ko loaded" else - log_ok "open-iov-vfio.ko already loaded" + log_ok "vgsp.ko already loaded" fi } @@ -117,9 +117,9 @@ cmd_load_nvidia() { fi if lsmod | grep -q "^nvidia "; then # A module named 'nvidia' is already loaded. For QEMU/vGPU with - # open-iov-vfio.ko (emulated VFIO device), we do NOT need our + # vgsp.ko (emulated VFIO device), we do NOT need our # submodule nvidia.ko on the host - the apt nvidia driver manages - # the physical GPU and open-iov-vfio handles the emulated vGPU. + # the physical GPU and vgsp handles the emulated vGPU. # Loading our submodule would conflict with the apt driver and # potentially crash the GSP (WPR2 stuck). Skip it. local loaded_ver @@ -153,7 +153,7 @@ cmd_load_stack() { cmd_install_firmware # NOTE: NVIDIA submodule NOT loaded for QEMU/vGPU work. # apt nvidia (570.211.01) manages the physical GPU; - # open-iov-vfio handles the emulated vGPU. + # vgsp handles the emulated vGPU. log_ok "=== DRIVER STACK LOADED ===" lsmod | grep -E "nvidia|open_iov|vfio|mdev" } @@ -205,10 +205,10 @@ cmd_unload_stack() { fi fi - if lsmod | grep -qE "^open_iov_vfio\>"; then - log_info "Unloading open-iov-vfio.ko..." - sudo rmmod open_iov_vfio || { log_err "Failed to unload open-iov-vfio.ko"; return 1; } - log_ok "open-iov-vfio.ko unloaded" + if lsmod | grep -qE "^vgsp\>"; then + log_info "Unloading vgsp.ko..." + sudo rmmod vgsp || { log_err "Failed to unload vgsp.ko"; return 1; } + log_ok "vgsp.ko unloaded" fi sudo modprobe -r vfio_mdev vfio_pci vfio_iommu_type1 vfio mdev 2>/dev/null || true @@ -329,14 +329,14 @@ USAGE: ./stack_manager.sh <command> [options] BUILD COMMANDS (run in order): - build-kernel Build open-iov-vfio.ko (generates Module.symvers) + build-kernel Build vgsp.ko (generates Module.symvers) build-nvidia Build NVIDIA OpenRM with KBUILD_EXTRA_SYMBOLS build-userspace Build libiov.so + examples build-all Run all three build steps in correct order LOAD COMMANDS (run in order): load-prereqs Load vfio, vfio_iommu_type1, vfio_pci, mdev, vfio_mdev - load-open-iov Load open-iov-vfio.ko + load-open-iov Load vgsp.ko load-nvidia Load nvidia.ko (OpenRM) install-firmware Copy GSP firmware to /lib/firmware/ load-stack Run all four load steps in correct order @@ -386,10 +386,10 @@ EXAMPLES: NOTE: - Requires root for module operations - - BUILD ORDER: open-iov-vfio.ko FIRST (generates Module.symvers), + - BUILD ORDER: vgsp.ko FIRST (generates Module.symvers), THEN nvidia.ko with KBUILD_EXTRA_SYMBOLS - - LOAD ORDER: vfio/mdev prerequisites -> open-iov-vfio.ko -> nvidia.ko - - UNLOAD ORDER: remove mdevs -> open-iov-vfio.ko -> nvidia.ko + - LOAD ORDER: vfio/mdev prerequisites -> vgsp.ko -> nvidia.ko + - UNLOAD ORDER: remove mdevs -> vgsp.ko -> nvidia.ko - NEVER REBOOT without explicit approval EOF } |
