From 342c08d0b0279b7b3d0a63a95f41cb76f3566135 Mon Sep 17 00:00:00 2001 From: Michal Berger Date: Thu, 3 Sep 2020 13:46:56 +0200 Subject: [PATCH] scripts/setup: Define fallback driver for each device type Most distros ship these drivers as modules, however, some, like clearlinux, have them compiled directly in the kernel (e.g. nvme). In case modalias lookup fails, have a fallback prepared just in case. Change-Id: Ib9da8ff69edbb0c4ce427aa089fa7d04b399a20b Signed-off-by: Michal Berger Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/4047 Reviewed-by: Karol Latecki Reviewed-by: Jim Harris Reviewed-by: Tomasz Zawadzki Reviewed-by: Maciej Wawryk Tested-by: SPDK CI Jenkins --- scripts/setup.sh | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/scripts/setup.sh b/scripts/setup.sh index 78becd7e5..8c81ee63e 100755 --- a/scripts/setup.sh +++ b/scripts/setup.sh @@ -421,11 +421,12 @@ function reset_linux_pci() { for bdf in "${!all_devices_d[@]}"; do ((all_devices_d["$bdf"] == 0)) || continue - if [[ -n ${virtio_d["$bdf"]} ]]; then - driver=$(collect_driver "$bdf" virtio-pci) - else - driver=$(collect_driver "$bdf") - fi + [[ -n ${nvme_d["$bdf"]} ]] && fallback_driver=nvme + [[ -n ${ioat_d["$bdf"]} ]] && fallback_driver=ioatdma + [[ -n ${idxd_d["$bdf"]} ]] && fallback_driver=idxd + [[ -n ${virtio_d["$bdf"]} ]] && fallback_driver=virtio-pci + [[ -n ${vmd_d["$bdf"]} ]] && fallback_driver=vmd + driver=$(collect_driver "$bdf" "$fallback_driver") if ! check_for_driver "$driver"; then linux_bind_driver "$bdf" "$driver"