mirror of
https://github.com/systemd/systemd
synced 2024-10-15 20:45:09 +00:00
TEST-74-AUX-UTILS: Drop usage of loop module
This module is builtin on ubuntu causing the test to fail. Let's use just dummy instead. I tried replacing it with scsi_debug but that caused issues with modprobe complaining it could not remove scsi_debug because it was in use.
This commit is contained in:
parent
da87c35f35
commit
3d5c6ece1c
|
@ -20,7 +20,7 @@ fi
|
|||
ORIG_MODULES_LOAD_CONFIG="$(systemd-analyze cat-config modules-load.d)"
|
||||
|
||||
# Check if we have required kernel modules
|
||||
modprobe --all --resolve-alias loop dummy
|
||||
modprobe --all --resolve-alias dummy
|
||||
|
||||
mkdir -p /run/modules-load.d/
|
||||
|
||||
|
@ -29,62 +29,58 @@ mkdir -p /run/modules-load.d/
|
|||
"$MODULES_LOAD_BIN" --version
|
||||
|
||||
# Explicit config file
|
||||
modprobe -v --all --remove loop dummy
|
||||
printf "loop\ndummy" >"$CONFIG_FILE"
|
||||
modprobe -v --all --remove dummy
|
||||
printf "dummy" >"$CONFIG_FILE"
|
||||
"$MODULES_LOAD_BIN" "$CONFIG_FILE" |& tee /tmp/out.log
|
||||
grep -E "Inserted module .*loop" /tmp/out.log
|
||||
grep -E "Inserted module .*dummy" /tmp/out.log
|
||||
|
||||
# Implicit config file
|
||||
modprobe -v --all --remove loop dummy
|
||||
printf "loop\ndummy" >"$CONFIG_FILE"
|
||||
modprobe -v --all --remove dummy
|
||||
printf "dummy" >"$CONFIG_FILE"
|
||||
"$MODULES_LOAD_BIN" |& tee /tmp/out.log
|
||||
grep -E "Inserted module .*loop" /tmp/out.log
|
||||
grep -E "Inserted module .*dummy" /tmp/out.log
|
||||
|
||||
# Valid & invalid data mixed together
|
||||
modprobe -v --all --remove loop dummy
|
||||
modprobe -v --all --remove dummy
|
||||
cat >"$CONFIG_FILE" <<EOF
|
||||
|
||||
loop
|
||||
loop
|
||||
loop
|
||||
loop
|
||||
dummy
|
||||
dummy
|
||||
dummy
|
||||
dummy
|
||||
dummy
|
||||
\\n\n\n\\\\\\
|
||||
|
||||
loo!@@123##2455
|
||||
dumm!@@123##2455
|
||||
# This is a comment
|
||||
$(printf "%.0sx" {0..4096})
|
||||
dummy
|
||||
loop
|
||||
dummy
|
||||
foo-bar-baz
|
||||
1
|
||||
"
|
||||
'
|
||||
EOF
|
||||
"$MODULES_LOAD_BIN" |& tee /tmp/out.log
|
||||
grep -E "^Inserted module .*loop" /tmp/out.log
|
||||
grep -E "^Inserted module .*dummy" /tmp/out.log
|
||||
grep -E "^Failed to find module .*foo-bar-baz" /tmp/out.log
|
||||
(! grep -E "This is a comment" /tmp/out.log)
|
||||
# Each module should be loaded only once, even if specified multiple times
|
||||
[[ "$(grep -Ec "^Inserted module" /tmp/out.log)" -eq 2 ]]
|
||||
[[ "$(grep -Ec "^Inserted module" /tmp/out.log)" -eq 1 ]]
|
||||
[[ "$(grep -Ec "^Failed to find module" /tmp/out.log)" -eq 7 ]]
|
||||
|
||||
# Command line arguments
|
||||
modprobe -v --all --remove loop dummy
|
||||
modprobe -v --all --remove dummy
|
||||
# Make sure we have no config files left over that might interfere with
|
||||
# following tests
|
||||
rm -fv "$CONFIG_FILE"
|
||||
[[ "$ORIG_MODULES_LOAD_CONFIG" == "$(systemd-analyze cat-config modules-load.d)" ]]
|
||||
CMDLINE="ro root= modules_load= modules_load=, / = modules_load=foo-bar-baz,dummy modules_load=loop,loop,loop"
|
||||
CMDLINE="ro root= modules_load= modules_load=, / = modules_load=foo-bar-baz,dummy modules_load=dummy,dummy,dummy"
|
||||
SYSTEMD_PROC_CMDLINE="$CMDLINE" "$MODULES_LOAD_BIN" |& tee /tmp/out.log
|
||||
grep -E "^Inserted module .*loop" /tmp/out.log
|
||||
grep -E "^Inserted module .*dummy" /tmp/out.log
|
||||
grep -E "^Failed to find module .*foo-bar-baz" /tmp/out.log
|
||||
# Each module should be loaded only once, even if specified multiple times
|
||||
[[ "$(grep -Ec "^Inserted module" /tmp/out.log)" -eq 2 ]]
|
||||
[[ "$(grep -Ec "^Inserted module" /tmp/out.log)" -eq 1 ]]
|
||||
|
||||
(! "$MODULES_LOAD_BIN" --nope)
|
||||
(! "$MODULES_LOAD_BIN" /foo/bar/baz)
|
||||
|
|
Loading…
Reference in a new issue