disabpe-secondary-gpu service fix
This commit is contained in:
1 parent
0c8739e0af
commit
c5aa7b1f86
1 file changed
+10
-7
@@ -1,4 +1,6 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
if [[ ! -f /var/cache/disable-gpu ]] &>/dev/null; then
|
||||
exit 0
|
||||
fi
|
||||
@@ -7,23 +9,24 @@ if grep "nomodeset" /proc/cmdline ; then
|
||||
fi
|
||||
|
||||
remove_pci(){
|
||||
if [[ -d "/sys/bus/pci/devices/0000:$1/driver" ]] ; then
|
||||
module=$(basename $(readlink /sys/bus/pci/devices/0000:$1/driver/module))
|
||||
if [[ -d "/sys/bus/pci/devices/$1/driver" ]] ; then
|
||||
module=$(basename $(readlink /sys/bus/pci/devices/$1/driver/module))
|
||||
echo "Disabled: $module ($1)"
|
||||
rmmod -f $module
|
||||
fi
|
||||
echo 1 > /sys/bus/pci/devices/0000:$1/remove
|
||||
echo 1 > /sys/bus/pci/devices/$1/remove
|
||||
}
|
||||
|
||||
echo 1 > /sys/bus/pci/rescan
|
||||
|
||||
for dir in /sys/class/drm/card[0-9*] ; do
|
||||
for dir in $(ls /sys/bus/pci/devices/); do
|
||||
# 03 Display controller
|
||||
# 02 3D controller
|
||||
if grep "^0x0302" $dir/device/class ; then
|
||||
pci="$(basename $(readlink $dir/device))"
|
||||
if grep "^0x0302" /sys/bus/pci/devices/$dir/class ; then
|
||||
pci="$dir"
|
||||
echo "Found 3D controller: ${pci:5}"
|
||||
remove_pci "${pci:5}"
|
||||
remove_pci "$pci"
|
||||
fi
|
||||
done
|
||||
|
||||
udevadm control --reload
|
||||
Reference in new issue
Block a user