Add support of different pci path
Fix REUSE licensing
Change-Id: I9459a72b0701e4ba563935d0e28fb7465308a510
diff --git a/.reuse/dep5 b/.reuse/dep5
new file mode 100644
index 0000000..087f2d5
--- /dev/null
+++ b/.reuse/dep5
@@ -0,0 +1,5 @@
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+
+Files: VERSION .gitreview
+Copyright: 2021 Open Networking Foundation
+License: Apache-2.0
diff --git a/templates/sriov.sh.j2 b/templates/sriov.sh.j2
index b6e20ca..83d0ca3 100644
--- a/templates/sriov.sh.j2
+++ b/templates/sriov.sh.j2
@@ -32,7 +32,8 @@
local pfpci
local num_vfs
- pfpci=$(readlink /sys/devices/pci*/*/*/net/"$pf"/device | awk '{print substr($1,10)}')
+ pfdir=$(find /sys/devices/pci* -name "$pf")
+ pfpci=$(readlink "$pfdir"/device | awk '{print substr($1,10)}')
num_vfs=$(cat /sys/class/net/"$pf"/device/sriov_numvfs)/2
local vfpci
@@ -41,15 +42,16 @@
local vfn="virtfn$idx"
# shellcheck disable=SC2012
- vfpci=$(ls -l /sys/devices/pci*/*/"$pfpci" | awk -v vfn=$vfn 'vfn==$9 {print substr($11,4)}')
+ vfpci=$(ls -l "$pfdir/../.." | awk -v vfn=$vfn 'vfn==$9 {print substr($11,4)}')
+ vfpci_dir=$(readlink -f "$pfdir"/../../"$vfn")
# Capture and set MAC of the VF before unbinding from linux, for later use in CNI
mac=$(cat /sys/bus/pci*/*/"$vfpci"/net/*/address)
ip link set dev "$pf" vf $idx mac "$mac"
# Bind VF to vfio-pci
- echo "$vfpci" >/sys/bus/pci*/*/"$vfpci"/driver/unbind
- echo "vfio-pci" >/sys/devices/pci*/*/"$vfpci"/driver_override
+ echo "$vfpci" >"$vfpci_dir"/driver/unbind
+ echo "vfio-pci" >"$vfpci_dir"/driver_override
echo "$vfpci" >/sys/bus/pci/drivers/vfio-pci/bind
done
}