From 510a5fe446dea8513060813794c99e856eff1845 Mon Sep 17 00:00:00 2001 From: Alexandru Avadanii Date: Mon, 8 Jan 2018 16:47:18 +0100 Subject: lib.sh: Fix `modprobe -f` on Ubuntu For some reason, `modprobe -f` for a clean nbd module (from vanilla Ubuntu) fails with exec format error randomly, while a simple `modprobe` works. Change-Id: I79785e510cab757e2482baf442054be984c24019 Signed-off-by: Alexandru Avadanii --- mcp/scripts/lib.sh | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/mcp/scripts/lib.sh b/mcp/scripts/lib.sh index aebf97055..c34b76246 100644 --- a/mcp/scripts/lib.sh +++ b/mcp/scripts/lib.sh @@ -38,8 +38,8 @@ function get_base_image { function __kernel_modules { # Load mandatory kernel modules: loop, nbd local image_dir=$1 - sudo modprobe -f loop - if sudo modprobe -f nbd max_part=8; then + sudo modprobe loop + if sudo modprobe nbd max_part=8 || sudo modprobe -f nbd max_part=8; then return 0 fi # CentOS (or RHEL family in general) do not provide 'nbd' out of the box @@ -104,7 +104,8 @@ function __kernel_modules { sudo mkdir -p "/lib/modules/${__uname_r}/extra/" sudo cp drivers/block/nbd.ko "/lib/modules/${__uname_r}/extra/" ) - sudo depmod -a && sudo modprobe -f nbd max_part=8 + sudo depmod -a + sudo modprobe nbd max_part=8 || sudo modprobe -f nbd max_part=8 } function mount_image { -- cgit 1.2.3-korg