From dfa9c5bb9a6e9548267f3456724a5a1a7f342b06 Mon Sep 17 00:00:00 2001 From: Peter Ginchev Date: Tue, 11 Oct 2016 15:34:24 +0300 Subject: Rebind kernel drivers on VPP uninstall Change-Id: Icb0ce47134146c3a212b234f088c682982480128 Signed-off-by: Peter Ginchev --- build-root/deb/debian/vpp.postrm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 build-root/deb/debian/vpp.postrm (limited to 'build-root/deb/debian') diff --git a/build-root/deb/debian/vpp.postrm b/build-root/deb/debian/vpp.postrm new file mode 100644 index 00000000000..ac16a459d0f --- /dev/null +++ b/build-root/deb/debian/vpp.postrm @@ -0,0 +1,21 @@ +#!/bin/sh -e + +removed= + +# Unbind user-mode PCI drivers +pci_dirs=`find /sys/bus/pci/drivers -type d -name igb_uio -o -name uio_pci_generic -o -name vfio-pci` +for d in $pci_dirs; do + for f in ${d}/*; do + [ -e "${f}/config" ] || continue + echo 1 > ${f}/remove + basename `dirname ${f}` | xargs echo -n "Removing driver"; echo " for PCI ID" `basename ${f}` + removed=y + done +done +if [ -n "${removed}" ]; then + echo "There are changes in PCI drivers, rescaning" + echo 1 > /sys/bus/pci/rescan +else + echo "There weren't PCI devices binded" +fi + -- cgit 1.2.3-korg