diff options
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 } |
