# ============================================================================ # Open-IOV .gitignore # # Goals: # - No large binary objects in git (firmware blobs, VM images, Ghidra DBs) # - No build artifacts # - No vendor trees (NVIDIA OpenRM is pulled + patched by install.sh) # - No local QEMU-wrapper stacks (/, guest communication daemon) - the repo is # hypervisor-management neutral (works with libvirt, , raw QEMU, ...) # ============================================================================ # ---------------------------------------------------------------------------- # Kernel / kbuild artifacts # ---------------------------------------------------------------------------- *.o *.o.d .*.o.d *.ko *.mod *.mod.c *.mod.o Module.symvers modules.order .*.cmd .tmp_versions/ *.order *.symvers # ---------------------------------------------------------------------------- # Userspace build artifacts # ---------------------------------------------------------------------------- *.so *.so.* *.a *.pyc __pycache__/ userspace/lib/libiov.so* userspace/lib/libvgpu.so* userspace/examples/example_vgpu userspace/tests/*_test # ---------------------------------------------------------------------------- # NVIDIA open-gpu-kernel-modules (vendor tree) # Cloned at a pinned tag and patched by install.sh - see patches/nvidia/ # ---------------------------------------------------------------------------- /nvidia-open-gpu-kernel-modules/ # NVIDIA open-gpu-kernel-modules @ 570.144 (local checkout of the open kernel modules # driver's exact wire protocol - used by kernel/gsp_rm_emulation.c) /nvidia-570.144-reference/ # rmq build artifact (source stays) tools/rmq/rmq # ---------------------------------------------------------------------------- # GSP firmware blobs and decompiled GSP output # (large, license-restricted NVIDIA binaries; analysis scripts/docs stay) # ---------------------------------------------------------------------------- firmware/**/*.bin firmware/**/decompiled/ firmware/**/decompiled_*.c # ---------------------------------------------------------------------------- # Ghidra project databases (large binary DBs; analysis scripts stay tracked) # ---------------------------------------------------------------------------- tools/ghidra/**/*.rep/ tools/ghidra/**/*.gpr tools/ghidra/**/*.lock tools/ghidra/**/*.lock~ # ---------------------------------------------------------------------------- # VM images and disk artifacts (large binaries) # ---------------------------------------------------------------------------- *.iso *.img *.qcow2 *.qcow *.vmdk *.vdi *.raw # Compiled helper binaries (build from adjacent .c source instead) tools/debug/nv2080_ctrl # Prebuilt management tool binaries (not rebuilt from this tree) /userspace/bin/ # ---------------------------------------------------------------------------- # Local QEMU-wrapper / VM-management layer (NOT part of the reproducible core) # Bring your own wrapper: libvirt, /, plain qemu, etc. # ---------------------------------------------------------------------------- /GVM-guest/ /libvf.io/ /scripts/vgpu_vm.py /scripts/qemu_control.py /scripts/qemu_harness.sh # Local git-push helper (manages per-machine ssh-agent env; not portable) /scripts/git-push-vgpu.sh # ---------------------------------------------------------------------------- # Misc # ---------------------------------------------------------------------------- *.log *.tmp .DS_Store /core vgcore.* userspace/tests/test_vgpu_userspace # Maintainer notes: study index (never commit) ARCHAEOLOGY.md # generated at runtime by tools/guest-diag/vmcycle.sh tools/guest-diag/launch_qemu_rootport.run.sh # Vendor SDK headers kept locally as study material (not published) userspace/sdks/