restore-display-ram.sh 1022 B

12345678910111213141516171819202122232425262728
  1. #!/usr/bin/env bash
  2. # restore-display-ram.sh — restore nvidia_drm to the host default (no
  3. # modeset). Counterpart to unlock-display-ram.sh (the temporary 2 GB
  4. # display-reserve unlock): run after the EXL3 2x containers are stopped.
  5. #
  6. # Temporary by design: no /etc/modprobe.d entry is ever written; the
  7. # default modprobe state matches a fresh boot (firmware display reserve
  8. # stays at its 0.5 GB default until the next unlock).
  9. set -euo pipefail
  10. if [ ! -d /sys/module/nvidia_drm ]; then
  11. echo "nvidia_drm not loaded — nothing to restore"
  12. exit 0
  13. fi
  14. modeset=$(sudo cat /sys/module/nvidia_drm/parameters/modeset)
  15. if [ "$modeset" != "Y" ]; then
  16. echo "nvidia_drm already at default (modeset=$modeset) — nothing to do"
  17. exit 0
  18. fi
  19. if ! sudo rmmod nvidia_drm 2>/dev/null; then
  20. echo "nvidia_drm busy — waiting 3 s and retrying once"
  21. sleep 3
  22. sudo rmmod nvidia_drm
  23. fi
  24. sudo modprobe nvidia_drm
  25. echo "nvidia_drm restored to default (modeset=$(sudo cat /sys/module/nvidia_drm/parameters/modeset))"