core-agent-linux/qubes-rpc/prepare-suspend
Marek Marczykowski-Górecki 503ff804a3 suspend: fix order of modules unload
ehci_hcd is used by ehci_pci, so can't be unloaded first.
2013-10-22 16:51:38 +02:00

20 lines
690 B
Bash
Executable File

#!/bin/sh
action=$1
[ -z "$action" ] && action=suspend
if [ x"$action" == x"suspend" ]; then
nmcli nm sleep true || service NetworkManager stop
# Force interfaces down, just in case when NM didn't done it
for if in `ls /sys/class/net|grep -v "lo\|vif"`; do
ip l s $if down
done
modprobe -r uhci_hcd ehci_pci ehci_hcd
lsmod|grep -q iwldvm && touch /var/run/qubes/suspend-iwldvm-loaded
modprobe -r iwldvm
else
modprobe ehci_pci; modprobe uhci_hcd
test -e /var/run/qubes/suspend-iwldvm-loaded && modprobe iwldvm
nmcli nm sleep false || { [ -x /bin/systemctl ] && systemctl start NetworkManager.service; } || service qubes-core-netvm start
fi