diff --git a/rhel10/nvidia-driver b/rhel10/nvidia-driver index 13994cd3b..8a3b53413 100755 --- a/rhel10/nvidia-driver +++ b/rhel10/nvidia-driver @@ -531,6 +531,10 @@ _unload_driver() { rmmod_args+=("nvidia-peermem") ((++nvidia_deps)) fi + if [ -f /sys/module/gdrdrv/refcnt ]; then + rmmod_args+=("gdrdrv") + ((++nvidia_deps)) + fi if [ ${nvidia_refs} -gt ${nvidia_deps} ] || [ ${nvidia_uvm_refs} -gt 0 ] || [ ${nvidia_modeset_refs} -gt 0 ] || [ ${nvidia_peermem_refs} -gt 0 ]; then echo "Could not unload NVIDIA driver kernel modules, driver is in use" >&2 return 1 diff --git a/rhel10/precompiled/nvidia-driver b/rhel10/precompiled/nvidia-driver index 1c82533d2..0d1fc5b09 100755 --- a/rhel10/precompiled/nvidia-driver +++ b/rhel10/precompiled/nvidia-driver @@ -344,6 +344,10 @@ _unload_driver() { rmmod_args+=("nvidia-peermem") ((++nvidia_deps)) fi + if [ -f /sys/module/gdrdrv/refcnt ]; then + rmmod_args+=("gdrdrv") + ((++nvidia_deps)) + fi if [ ${nvidia_refs} -gt ${nvidia_deps} ] || [ ${nvidia_uvm_refs} -gt 0 ] || [ ${nvidia_modeset_refs} -gt 0 ] || [ ${nvidia_peermem_refs} -gt 0 ]; then echo "Could not unload NVIDIA driver kernel modules, driver is in use" >&2 return 1 diff --git a/rhel8/nvidia-driver b/rhel8/nvidia-driver index 58753091b..033376426 100755 --- a/rhel8/nvidia-driver +++ b/rhel8/nvidia-driver @@ -508,6 +508,10 @@ _unload_driver() { rmmod_args+=("nvidia-peermem") ((++nvidia_deps)) fi + if [ -f /sys/module/gdrdrv/refcnt ]; then + rmmod_args+=("gdrdrv") + ((++nvidia_deps)) + fi if [ ${nvidia_refs} -gt ${nvidia_deps} ] || [ ${nvidia_uvm_refs} -gt 0 ] || [ ${nvidia_modeset_refs} -gt 0 ] || [ ${nvidia_peermem_refs} -gt 0 ]; then echo "Could not unload NVIDIA driver kernel modules, driver is in use" >&2 return 1 diff --git a/rhel8/precompiled/nvidia-driver b/rhel8/precompiled/nvidia-driver index de85549bc..c94c7819a 100755 --- a/rhel8/precompiled/nvidia-driver +++ b/rhel8/precompiled/nvidia-driver @@ -281,6 +281,10 @@ _unload_driver() { rmmod_args+=("nvidia-peermem") ((++nvidia_deps)) fi + if [ -f /sys/module/gdrdrv/refcnt ]; then + rmmod_args+=("gdrdrv") + ((++nvidia_deps)) + fi if [ ${nvidia_refs} -gt ${nvidia_deps} ] || [ ${nvidia_uvm_refs} -gt 0 ] || [ ${nvidia_modeset_refs} -gt 0 ] || [ ${nvidia_peermem_refs} -gt 0 ]; then echo "Could not unload NVIDIA driver kernel modules, driver is in use" >&2 return 1 diff --git a/rhel9/nvidia-driver b/rhel9/nvidia-driver index faaa2181a..e6de1258c 100755 --- a/rhel9/nvidia-driver +++ b/rhel9/nvidia-driver @@ -527,6 +527,10 @@ _unload_driver() { rmmod_args+=("nvidia-peermem") ((++nvidia_deps)) fi + if [ -f /sys/module/gdrdrv/refcnt ]; then + rmmod_args+=("gdrdrv") + ((++nvidia_deps)) + fi if [ ${nvidia_refs} -gt ${nvidia_deps} ] || [ ${nvidia_uvm_refs} -gt 0 ] || [ ${nvidia_modeset_refs} -gt 0 ] || [ ${nvidia_peermem_refs} -gt 0 ]; then echo "Could not unload NVIDIA driver kernel modules, driver is in use" >&2 return 1 diff --git a/rhel9/precompiled/nvidia-driver b/rhel9/precompiled/nvidia-driver index 4e18e22e0..90dc84a41 100755 --- a/rhel9/precompiled/nvidia-driver +++ b/rhel9/precompiled/nvidia-driver @@ -370,6 +370,10 @@ _unload_driver() { rmmod_args+=("nvidia-peermem") ((++nvidia_deps)) fi + if [ -f /sys/module/gdrdrv/refcnt ]; then + rmmod_args+=("gdrdrv") + ((++nvidia_deps)) + fi if [ ${nvidia_refs} -gt ${nvidia_deps} ] || [ ${nvidia_uvm_refs} -gt 0 ] || [ ${nvidia_modeset_refs} -gt 0 ] || [ ${nvidia_peermem_refs} -gt 0 ]; then echo "Could not unload NVIDIA driver kernel modules, driver is in use" >&2 return 1 diff --git a/ubuntu22.04/nvidia-driver b/ubuntu22.04/nvidia-driver index 283dbbb68..025001af6 100755 --- a/ubuntu22.04/nvidia-driver +++ b/ubuntu22.04/nvidia-driver @@ -482,6 +482,10 @@ _unload_driver() { rmmod_args+=("nvidia-peermem") ((++nvidia_deps)) fi + if [ -f /sys/module/gdrdrv/refcnt ]; then + rmmod_args+=("gdrdrv") + ((++nvidia_deps)) + fi if [ -f /sys/module/nvidia/refcnt ]; then nvidia_refs=$(< /sys/module/nvidia/refcnt) rmmod_args+=("nvidia") diff --git a/ubuntu22.04/precompiled/nvidia-driver b/ubuntu22.04/precompiled/nvidia-driver index bb63653a3..80b481587 100755 --- a/ubuntu22.04/precompiled/nvidia-driver +++ b/ubuntu22.04/precompiled/nvidia-driver @@ -360,6 +360,10 @@ _unload_driver() { rmmod_args+=("nvidia-peermem") ((++nvidia_deps)) fi + if [ -f /sys/module/gdrdrv/refcnt ]; then + rmmod_args+=("gdrdrv") + ((++nvidia_deps)) + fi if [ -f /sys/module/nvidia/refcnt ]; then nvidia_refs=$(< /sys/module/nvidia/refcnt) rmmod_args+=("nvidia") diff --git a/ubuntu24.04/nvidia-driver b/ubuntu24.04/nvidia-driver index f3e0fdb66..a76d25890 100755 --- a/ubuntu24.04/nvidia-driver +++ b/ubuntu24.04/nvidia-driver @@ -423,6 +423,10 @@ _unload_driver() { rmmod_args+=("nvidia-peermem") ((++nvidia_deps)) fi + if [ -f /sys/module/gdrdrv/refcnt ]; then + rmmod_args+=("gdrdrv") + ((++nvidia_deps)) + fi if [ -f /sys/module/nvidia/refcnt ]; then nvidia_refs=$(< /sys/module/nvidia/refcnt) rmmod_args+=("nvidia") diff --git a/ubuntu24.04/precompiled/nvidia-driver b/ubuntu24.04/precompiled/nvidia-driver index 6a5cb5804..898b415ef 100755 --- a/ubuntu24.04/precompiled/nvidia-driver +++ b/ubuntu24.04/precompiled/nvidia-driver @@ -361,6 +361,10 @@ _unload_driver() { rmmod_args+=("nvidia-peermem") ((++nvidia_deps)) fi + if [ -f /sys/module/gdrdrv/refcnt ]; then + rmmod_args+=("gdrdrv") + ((++nvidia_deps)) + fi if [ -f /sys/module/nvidia/refcnt ]; then nvidia_refs=$(< /sys/module/nvidia/refcnt) rmmod_args+=("nvidia") diff --git a/ubuntu26.04/precompiled/nvidia-driver b/ubuntu26.04/precompiled/nvidia-driver index 54a926aed..6f458b900 100755 --- a/ubuntu26.04/precompiled/nvidia-driver +++ b/ubuntu26.04/precompiled/nvidia-driver @@ -331,6 +331,10 @@ _unload_driver() { rmmod_args+=("nvidia-peermem") ((++nvidia_deps)) fi + if [ -f /sys/module/gdrdrv/refcnt ]; then + rmmod_args+=("gdrdrv") + ((++nvidia_deps)) + fi if [ -f /sys/module/nvidia/refcnt ]; then nvidia_refs=$(< /sys/module/nvidia/refcnt) rmmod_args+=("nvidia")