aboutsummaryrefslogtreecommitdiffstats
path: root/extras/scripts/pci-nic-bind-to-kernel
diff options
context:
space:
mode:
authorDamjan Marion <damarion@cisco.com>2017-04-26 10:38:14 +0200
committerOle Trøan <otroan@employees.org>2017-06-16 20:32:20 +0000
commit2fe427dfb091805a4512622d39a594167d89d745 (patch)
tree6914360073f86ca8a641c9ece8877b12c5858d18 /extras/scripts/pci-nic-bind-to-kernel
parent6bfd8d13b047f54d099e62bad6b5c5bed904adc0 (diff)
Move scripts to extras/
Change-Id: I2abd6367915d4652fcf45025bd251046f3f206ab Signed-off-by: Damjan Marion <damarion@cisco.com> (cherry picked from commit 5ef1fef692182dabc986995390d46552d88fb9df)
Diffstat (limited to 'extras/scripts/pci-nic-bind-to-kernel')
-rwxr-xr-xextras/scripts/pci-nic-bind-to-kernel19
1 files changed, 19 insertions, 0 deletions
diff --git a/extras/scripts/pci-nic-bind-to-kernel b/extras/scripts/pci-nic-bind-to-kernel
new file mode 100755
index 00000000000..3d8559e3e15
--- /dev/null
+++ b/extras/scripts/pci-nic-bind-to-kernel
@@ -0,0 +1,19 @@
+#!/bin/bash
+
+# Bind all unused PCI devices bound to uio drivers
+# back to default kernel driver
+
+if [ $USER != "root" ] ; then
+ echo "Restarting script with sudo..."
+ sudo $0 ${*}
+ exit
+fi
+
+for f in /sys/bus/pci/drivers/{igb_uio,uio_pci_generic,vfio-pci}/*; do
+ [ -e ${f}/config ] || continue
+ fuser -s ${f}/config && continue
+ echo 1 > ${f}/remove
+ removed=y
+done
+
+[ -n ${removed} ] && echo 1 > /sys/bus/pci/rescan