mirror of
https://github.com/dracutdevs/dracut.git
synced 2024-10-26 07:55:28 +03:00
fix: shellcheck 0.7.2
github action `luizm/action-sh-checker@v0.2.2` uses `shellcheck-0.7.2`, which detects more non-posix shell code and complains accordingly.
This commit is contained in:
parent
0dc87f7b9e
commit
909961d048
4
.github/workflows/lint.yml
vendored
4
.github/workflows/lint.yml
vendored
@ -29,10 +29,10 @@ jobs:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: shfmt
|
||||
uses: luizm/action-sh-checker@v0.2.0
|
||||
uses: luizm/action-sh-checker@v0.2.2
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
SHFMT_OPTS: -d -s # arguments to shfmt.
|
||||
SHFMT_OPTS: -s # arguments to shfmt.
|
||||
with:
|
||||
sh_checker_shellcheck_disable: false
|
||||
sh_checker_comment: true
|
||||
|
@ -17,3 +17,18 @@ disable=SC1091
|
||||
# SC2174: When used with -p, -m only applies to the deepest directory.
|
||||
# https://github.com/koalaman/shellcheck/wiki/SC2174
|
||||
disable=SC2174
|
||||
|
||||
# SC3043: In POSIX sh, 'local' is undefined.
|
||||
# https://github.com/koalaman/shellcheck/wiki/SC3043
|
||||
# ... but dash supports it
|
||||
disable=SC3043
|
||||
|
||||
# SC3013: In POSIX sh, -ef is undefined.
|
||||
# https://github.com/koalaman/shellcheck/wiki/SC3013
|
||||
# ... but dash supports it
|
||||
disable=SC3013
|
||||
|
||||
# SC3045: In POSIX sh, read -p is undefined.
|
||||
# https://github.com/koalaman/shellcheck/wiki/SC3045
|
||||
# ... but dash supports it
|
||||
disable=SC3045
|
||||
|
@ -30,6 +30,7 @@ if ((BASH_VERSINFO[0] < 4)); then
|
||||
fi
|
||||
|
||||
dracut_args=("$@")
|
||||
# shellcheck disable=SC2155
|
||||
readonly dracut_cmd=$(readlink -f "$0")
|
||||
|
||||
set -o pipefail
|
||||
@ -1111,6 +1112,7 @@ case "${drivers_dir}" in
|
||||
;;
|
||||
esac
|
||||
|
||||
# shellcheck disable=SC2155
|
||||
readonly TMPDIR="$(realpath -e "$tmpdir")"
|
||||
[ -d "$TMPDIR" ] || {
|
||||
printf "%s\n" "dracut: Invalid tmpdir '$tmpdir'." >&2
|
||||
@ -1122,6 +1124,7 @@ if findmnt --raw -n --target "$tmpdir" --output=options | grep -q noexec; then
|
||||
noexec=1
|
||||
fi
|
||||
|
||||
# shellcheck disable=SC2155
|
||||
readonly DRACUT_TMPDIR="$(mktemp -p "$TMPDIR/" -d -t dracut.XXXXXX)"
|
||||
[ -d "$DRACUT_TMPDIR" ] || {
|
||||
printf "%s\n" "dracut: mktemp -p '$TMPDIR/' -d -t dracut.XXXXXX failed." >&2
|
||||
|
@ -1,4 +1,4 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
# This file is part of dracut.
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
# This file is part of dracut.
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
# This file is part of dracut.
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
# This file is part of dracut.
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
# This file is part of dracut.
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
# This file is part of dracut.
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
# This file is part of dracut.
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
|
@ -65,7 +65,7 @@ do_dhclient() {
|
||||
warn "dhcp for interface $netif failed"
|
||||
# nuke those files since we failed; we might retry dhcp again if it's e.g.
|
||||
# `ip=dhcp,dhcp6` and we check for the PID file earlier
|
||||
rm -f /tmp/dhclient."$netif".{pid,lease}
|
||||
rm -f /tmp/dhclient."$netif".pid /tmp/dhclient."$netif".lease
|
||||
return 1
|
||||
}
|
||||
|
||||
|
@ -96,7 +96,7 @@ do_dhcp() {
|
||||
warn "dhcp for interface $netif failed"
|
||||
# nuke those files since we failed; we might retry dhcp again if it's e.g.
|
||||
# `ip=dhcp,dhcp6` and we check for the PID file at the top
|
||||
rm -f "/tmp/dhclient.${netif}".{pid,lease}
|
||||
rm -f /tmp/dhclient."$netif".pid /tmp/dhclient."$netif".lease
|
||||
return 1
|
||||
}
|
||||
|
||||
@ -268,7 +268,7 @@ if [ -z "$NO_BOND_MASTER" ]; then
|
||||
# shellcheck disable=SC1090
|
||||
. "$i"
|
||||
for testslave in $bondslaves; do
|
||||
[ "$netif" != "testslave" ] && continue
|
||||
[ "$netif" != "$testslave" ] && continue
|
||||
|
||||
# already setup
|
||||
[ -e "/tmp/bond.$bondname.up" ] && exit 0
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
# called by dracut
|
||||
check() {
|
||||
require_binaries ip dhclient sed awk grep pgrep tr || return 1
|
||||
require_binaries ip dhclient sed awk grep pgrep tr expr || return 1
|
||||
require_any_binary arping arping2 || return 1
|
||||
|
||||
return 255
|
||||
@ -28,7 +28,7 @@ install() {
|
||||
[[ $hostonly ]] && inst_multiple -H -o "${systemdsystemconfdir}/network/*.link"
|
||||
fi
|
||||
|
||||
inst_multiple ip dhclient sed awk grep pgrep tr
|
||||
inst_multiple ip dhclient sed awk grep pgrep tr expr
|
||||
|
||||
inst_multiple -o arping arping2
|
||||
strstr "$(arping 2>&1)" "ARPing 2" && mv "$initdir/bin/arping" "$initdir/bin/arping2"
|
||||
|
@ -113,14 +113,16 @@ for p in $(getargs ip=); do
|
||||
fi
|
||||
|
||||
if str_starts "$dev" "enx" && [ ${#dev} -eq 15 ]; then
|
||||
# shellcheck disable=SC2003
|
||||
printf -- "ifname=%s:%s:%s:%s:%s:%s:%s\n" \
|
||||
"$dev" \
|
||||
"${dev:3:2}" \
|
||||
"${dev:5:2}" \
|
||||
"${dev:7:2}" \
|
||||
"${dev:9:2}" \
|
||||
"${dev:11:2}" \
|
||||
"${dev:13:2}" >> /etc/cmdline.d/80-enx.conf
|
||||
"$(expr substr "$dev" 3 2)" \
|
||||
"$(expr substr "$dev" 5 2)" \
|
||||
"$(expr substr "$dev" 7 2)" \
|
||||
"$(expr substr "$dev" 9 2)" \
|
||||
"$(expr substr "$dev" 11 2)" \
|
||||
"$(expr substr "$dev" 13 2)" \
|
||||
>> /etc/cmdline.d/80-enx.conf
|
||||
fi
|
||||
done
|
||||
|
||||
|
@ -42,6 +42,7 @@ install() {
|
||||
inst_simple "$moddir/net-lib.sh" "/lib/net-lib.sh"
|
||||
inst_hook pre-udev 50 "$moddir/ifname-genrules.sh"
|
||||
inst_hook cmdline 91 "$moddir/dhcp-root.sh"
|
||||
|
||||
inst_multiple ip sed awk grep pgrep tr
|
||||
inst_multiple -o arping arping2
|
||||
dracut_need_initqueue
|
||||
}
|
||||
|
@ -266,10 +266,10 @@ ibft_to_cmdline() {
|
||||
|
||||
[ -e "${iface}"/flags ] && read -r flags < "${iface}"/flags
|
||||
# Skip invalid interfaces
|
||||
((flags & 1)) || continue
|
||||
awk -- 'BEGIN { exit (!and('"$flags"',1)) }' || continue
|
||||
# Skip interfaces not used for booting unless using multipath
|
||||
if ! getargbool 0 rd.iscsi.mp; then
|
||||
((flags & 2)) || continue
|
||||
awk -- 'BEGIN { exit (!and('"$flags"',2)) }' || continue
|
||||
fi
|
||||
[ -e "${iface}"/dhcp ] && read -r dhcp < "${iface}"/dhcp
|
||||
[ -e "${iface}"/origin ] && read -r origin < "${iface}"/origin
|
||||
|
@ -1,4 +1,4 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
# This file is part of dracut.
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
|
@ -14,7 +14,7 @@ if [ -n "$CIO_ACCEPT" ]; then
|
||||
IFS=,
|
||||
# shellcheck disable=SC2086
|
||||
set -- $CIO_ACCEPT
|
||||
while (($# > 0)); do
|
||||
while [ "$#" -gt 0 ]; do
|
||||
info "Enabling device $1"
|
||||
cio_ignore --remove "$1"
|
||||
shift
|
||||
|
@ -56,6 +56,7 @@ installkernel() {
|
||||
# called by dracut
|
||||
cmdline() {
|
||||
local dev UUID
|
||||
# shellcheck disable=SC2031
|
||||
for dev in "${!host_fs_types[@]}"; do
|
||||
[[ ${host_fs_types[$dev]} != "crypto_LUKS" ]] && continue
|
||||
|
||||
@ -130,6 +131,7 @@ install() {
|
||||
if [ "${forceentry}" = "yes" ]; then
|
||||
echo "$_mapper $_dev $_luksfile $_luksoptions"
|
||||
else
|
||||
# shellcheck disable=SC2031
|
||||
for _hdev in "${!host_fs_types[@]}"; do
|
||||
[[ ${host_fs_types[$_hdev]} == "crypto_LUKS" ]] || continue
|
||||
if [[ $_hdev -ef $_dev ]] || [[ /dev/block/$_hdev -ef $_dev ]]; then
|
||||
|
@ -1,4 +1,4 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
|
||||
type getarg > /dev/null 2>&1 || . /lib/dracut-lib.sh
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
|
||||
type getarg > /dev/null 2>&1 || . /lib/dracut-lib.sh
|
||||
|
||||
|
@ -11,7 +11,7 @@ check() {
|
||||
depends() {
|
||||
# if dmsetup is not installed, then we cannot support fedora/red hat
|
||||
# style live images
|
||||
echo dm rootfs-block img-lib
|
||||
echo dm rootfs-block img-lib bash
|
||||
return 0
|
||||
}
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
|
||||
type getarg > /dev/null 2>&1 || . /lib/dracut-lib.sh
|
||||
|
||||
|
@ -8,7 +8,7 @@ check() {
|
||||
|
||||
# called by dracut
|
||||
depends() {
|
||||
echo network url-lib dmsquash-live img-lib
|
||||
echo network url-lib dmsquash-live img-lib bash
|
||||
return 0
|
||||
}
|
||||
|
||||
|
@ -7,7 +7,7 @@ fi
|
||||
LV_DEVS="$(getargs rd.lvm.vg -d rd_LVM_VG=) $(getargs rd.lvm.lv -d rd_LVM_LV=)"
|
||||
|
||||
if ! getargbool 1 rd.lvm -d -n rd_NO_LVM \
|
||||
|| ([ -z "$LV_DEVS" ] && ! getargbool 0 rd.auto); then
|
||||
|| { [ -z "$LV_DEVS" ] && ! getargbool 0 rd.auto; }; then
|
||||
info "rd.lvm=0: removing LVM activation"
|
||||
rm -f -- /etc/udev/rules.d/64-lvm*.rules
|
||||
else
|
||||
|
@ -7,7 +7,7 @@ MD_UUID=$(getargs rd.md.uuid -d rd_MD_UUID=)
|
||||
MD_UUID=$(str_replace "$MD_UUID" "-" "")
|
||||
MD_UUID=$(str_replace "$MD_UUID" ":" "")
|
||||
|
||||
if ([ -z "$MD_UUID" ] && ! getargbool 0 rd.auto) || ! getargbool 1 rd.md -d -n rd_NO_MD; then
|
||||
if { [ -z "$MD_UUID" ] && ! getargbool 0 rd.auto; } || ! getargbool 1 rd.md -d -n rd_NO_MD; then
|
||||
info "rd.md=0: removing MD RAID activation"
|
||||
udevproperty rd_NO_MD=1
|
||||
else
|
||||
|
@ -129,9 +129,7 @@ if strstr "$(nbd-client --help 2>&1)" "systemd-mark"; then
|
||||
preopts="-systemd-mark $preopts"
|
||||
fi
|
||||
|
||||
if [ "$nbdport" -gt 0 ] 2> /dev/null; then
|
||||
nbdport="$nbdport"
|
||||
else
|
||||
if ! [ "$nbdport" -gt 0 ] 2> /dev/null; then
|
||||
nbdport="-name $nbdport"
|
||||
fi
|
||||
|
||||
|
@ -12,6 +12,7 @@ check() {
|
||||
|
||||
# called by dracut
|
||||
depends() {
|
||||
echo bash
|
||||
return 0
|
||||
}
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
|
||||
for ccw_arg in $(getargs rd.ccw -d 'rd_CCW=') $(getargs rd.znet -d 'rd_ZNET='); do
|
||||
echo "$ccw_arg" >> /etc/ccw.conf
|
||||
|
@ -14,7 +14,7 @@ echo
|
||||
echo
|
||||
echo
|
||||
echo "Enter additional kernel command line parameter (end with ctrl-d or .)"
|
||||
while read -r -e -p "> " line || [ -n "$line" ]; do
|
||||
while read -r -p "> " ${BASH:+-e} line || [ -n "$line" ]; do
|
||||
[ "$line" = "." ] && break
|
||||
[ -n "$line" ] && printf -- "%s\n" "$line" >> /etc/cmdline.d/99-cmdline-ask.conf
|
||||
done
|
||||
|
@ -109,7 +109,7 @@ source_conf /etc/conf.d
|
||||
|
||||
if getarg "rd.cmdline=ask"; then
|
||||
echo "Enter additional kernel command line parameter (end with ctrl-d or .)"
|
||||
while read -r -p "> " line || [ -n "$line" ]; do
|
||||
while read -r -p "> " ${BASH:+-e} line || [ -n "$line" ]; do
|
||||
[ "$line" = "." ] && break
|
||||
echo "$line" >> /etc/cmdline.d/99-cmdline-ask.conf
|
||||
done
|
||||
|
@ -10,8 +10,11 @@ det_archive() {
|
||||
local bz xz gz zs
|
||||
local headerblock
|
||||
bz="BZh"
|
||||
# shellcheck disable=SC3037
|
||||
xz="$(/bin/echo -e '\xfd7zXZ')"
|
||||
# shellcheck disable=SC3037
|
||||
gz="$(/bin/echo -e '\x1f\x8b')"
|
||||
# shellcheck disable=SC3037
|
||||
zs="$(/bin/echo -e '\x28\xB5\x2F\xFD')"
|
||||
headerblock="$(dd ${1:+if=$1} bs=262 count=1 2> /dev/null | tr -d '\0')"
|
||||
case "$headerblock" in
|
||||
|
@ -1,4 +1,4 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
# Mount kernel debug fs so debug tools can work.
|
||||
# memdebug=4 and memdebug=5 requires debug fs to be mounted.
|
||||
# And there is no need to umount it.
|
||||
@ -65,4 +65,5 @@ fi
|
||||
sleep 1
|
||||
|
||||
echo $PID > /run/memstrack.pid
|
||||
# bash specific - non posix
|
||||
disown
|
||||
|
@ -11,7 +11,7 @@ check() {
|
||||
}
|
||||
|
||||
depends() {
|
||||
echo systemd
|
||||
echo systemd bash
|
||||
return 0
|
||||
}
|
||||
|
||||
|
@ -12,7 +12,7 @@ ACTION="$1"
|
||||
# the process will be killed when when running as PID 1.
|
||||
# shellcheck disable=SC2217
|
||||
[ -w /dev/console ] \
|
||||
&& (echo < /dev/console &> /dev/null) \
|
||||
&& (echo < /dev/console > /dev/null 2> /dev/null) \
|
||||
&& exec < /dev/console >> /dev/console 2>> /dev/console
|
||||
|
||||
export TERM=linux
|
||||
|
@ -18,7 +18,7 @@ test_run() {
|
||||
"$testdir"/run-qemu \
|
||||
"${disk_args[@]}" \
|
||||
-watchdog i6300esb -watchdog-action poweroff \
|
||||
-append "panic=1 systemd.crash_reboot \"root=LABEL= rdinit=/bin/sh\" rw systemd.log_level=debug systemd.log_target=console rd.retry=3 rd.debug console=ttyS0,115200n81 rd.shell=0 $DEBUGFAIL" \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot \"root=LABEL= rdinit=/bin/sh\" rw systemd.log_level=debug systemd.log_target=console rd.retry=3 rd.debug console=ttyS0,115200n81 rd.shell=0 $DEBUGFAIL" \
|
||||
-initrd "$TESTDIR"/initramfs.testing || return 1
|
||||
|
||||
grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img
|
||||
|
@ -16,7 +16,7 @@ test_run() {
|
||||
|
||||
"$testdir"/run-qemu \
|
||||
"${disk_args[@]}" \
|
||||
-append "panic=1 systemd.crash_reboot root=LABEL=dracut rw loglevel=77 systemd.log_level=debug systemd.log_target=console rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 init=/sbin/init rd.shell=0 $DEBUGFAIL" \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=LABEL=dracut rw loglevel=77 systemd.log_level=debug systemd.log_target=console rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 init=/sbin/init rd.shell=0 $DEBUGFAIL" \
|
||||
-initrd "$TESTDIR"/initramfs.testing || return 1
|
||||
|
||||
grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img
|
||||
|
@ -26,7 +26,7 @@ client_run() {
|
||||
"$testdir"/run-qemu \
|
||||
"${disk_args[@]}" \
|
||||
-watchdog i6300esb -watchdog-action poweroff \
|
||||
-append "panic=1 systemd.crash_reboot root=LABEL=dracut $client_opts loglevel=7 rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.debug rd.shell=0 $DEBUGFAIL" \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=LABEL=dracut $client_opts loglevel=7 rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.debug rd.shell=0 $DEBUGFAIL" \
|
||||
-initrd "$TESTDIR"/initramfs.testing || return 1
|
||||
|
||||
if ! grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img; then
|
||||
|
@ -27,7 +27,7 @@ client_run() {
|
||||
|
||||
"$testdir"/run-qemu \
|
||||
"${disk_args[@]}" \
|
||||
-append "panic=1 systemd.crash_reboot root=LABEL=dracut $client_opts rd.retry=3 console=ttyS0,115200n81 selinux=0 $DEBUGOUT rd.shell=0 $DEBUGFAIL" \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=LABEL=dracut $client_opts rd.retry=3 console=ttyS0,115200n81 selinux=0 $DEBUGOUT rd.shell=0 $DEBUGFAIL" \
|
||||
-initrd "$TESTDIR"/initramfs.testing || return 1
|
||||
|
||||
if ! grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img; then
|
||||
|
@ -19,7 +19,7 @@ test_run() {
|
||||
|
||||
"$testdir"/run-qemu \
|
||||
"${disk_args[@]}" \
|
||||
-append "panic=1 systemd.crash_reboot root=/dev/dracut/root rd.auto rw rd.retry=10 console=ttyS0,115200n81 selinux=0 rd.shell=0 $DEBUGFAIL" \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=/dev/dracut/root rd.auto rw rd.retry=10 console=ttyS0,115200n81 selinux=0 rd.shell=0 $DEBUGFAIL" \
|
||||
-initrd "$TESTDIR"/initramfs.testing || return 1
|
||||
|
||||
grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img
|
||||
|
@ -20,7 +20,7 @@ test_run() {
|
||||
|
||||
"$testdir"/run-qemu \
|
||||
"${disk_args[@]}" \
|
||||
-append "panic=1 systemd.crash_reboot root=/dev/dracut/root rw rd.auto=1 quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.debug rd.shell=0 $DEBUGFAIL" \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=/dev/dracut/root rw rd.auto=1 quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.debug rd.shell=0 $DEBUGFAIL" \
|
||||
-initrd "$TESTDIR"/initramfs.testing || return 1
|
||||
|
||||
grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img
|
||||
|
@ -24,7 +24,7 @@ client_run() {
|
||||
|
||||
"$testdir"/run-qemu \
|
||||
"${disk_args[@]}" \
|
||||
-append "panic=1 systemd.crash_reboot $* systemd.log_target=kmsg root=LABEL=root rw rd.retry=10 rd.info console=ttyS0,115200n81 log_buf_len=2M selinux=0 rd.shell=0 $DEBUGFAIL " \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot $* systemd.log_target=kmsg root=LABEL=root rw rd.retry=10 rd.info console=ttyS0,115200n81 log_buf_len=2M selinux=0 rd.shell=0 $DEBUGFAIL " \
|
||||
-initrd "$TESTDIR"/initramfs.testing
|
||||
|
||||
if ! grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img; then
|
||||
|
@ -26,7 +26,7 @@ test_run() {
|
||||
|
||||
"$testdir"/run-qemu \
|
||||
"${disk_args[@]}" \
|
||||
-append "panic=1 systemd.crash_reboot root=/dev/dracut/root rw rd.auto rd.retry=20 console=ttyS0,115200n81 selinux=0 rd.debug rootwait $LUKSARGS rd.shell=0 $DEBUGFAIL" \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=/dev/dracut/root rw rd.auto rd.retry=20 console=ttyS0,115200n81 selinux=0 rd.debug rootwait $LUKSARGS rd.shell=0 $DEBUGFAIL" \
|
||||
-initrd "$TESTDIR"/initramfs.testing
|
||||
grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img || return 1
|
||||
echo "CLIENT TEST END: [OK]"
|
||||
@ -36,7 +36,7 @@ test_run() {
|
||||
echo "CLIENT TEST START: Any LUKS"
|
||||
"$testdir"/run-qemu \
|
||||
"${disk_args[@]}" \
|
||||
-append "panic=1 systemd.crash_reboot root=/dev/dracut/root rw quiet rd.auto rd.retry=20 rd.info console=ttyS0,115200n81 selinux=0 rd.debug $DEBUGFAIL" \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=/dev/dracut/root rw quiet rd.auto rd.retry=20 rd.info console=ttyS0,115200n81 selinux=0 rd.debug $DEBUGFAIL" \
|
||||
-initrd "$TESTDIR"/initramfs.testing
|
||||
grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img || return 1
|
||||
echo "CLIENT TEST END: [OK]"
|
||||
@ -46,7 +46,7 @@ test_run() {
|
||||
echo "CLIENT TEST START: Wrong LUKS UUID"
|
||||
"$testdir"/run-qemu \
|
||||
"${disk_args[@]}" \
|
||||
-append "panic=1 systemd.crash_reboot root=/dev/dracut/root rw quiet rd.auto rd.retry=10 rd.info console=ttyS0,115200n81 selinux=0 rd.debug $DEBUGFAIL rd.luks.uuid=failme" \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=/dev/dracut/root rw quiet rd.auto rd.retry=10 rd.info console=ttyS0,115200n81 selinux=0 rd.debug $DEBUGFAIL rd.luks.uuid=failme" \
|
||||
-initrd "$TESTDIR"/initramfs.testing
|
||||
grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img && return 1
|
||||
echo "CLIENT TEST END: [OK]"
|
||||
|
@ -21,7 +21,7 @@ client_run() {
|
||||
|
||||
"$testdir"/run-qemu \
|
||||
"${disk_args[@]}" \
|
||||
-append "panic=1 systemd.crash_reboot $* root=LABEL=root rw debug rd.retry=5 rd.debug console=ttyS0,115200n81 selinux=0 rd.info rd.shell=0 $DEBUGFAIL" \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot $* root=LABEL=root rw debug rd.retry=5 rd.debug console=ttyS0,115200n81 selinux=0 rd.info rd.shell=0 $DEBUGFAIL" \
|
||||
-initrd "$TESTDIR"/initramfs.testing || return 1
|
||||
|
||||
if ! grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img; then
|
||||
|
@ -19,7 +19,7 @@ test_run() {
|
||||
|
||||
"$testdir"/run-qemu \
|
||||
"${disk_args[@]}" \
|
||||
-append "panic=1 systemd.crash_reboot root=LABEL=root rw rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.shell=0 $DEBUGFAIL" \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=LABEL=root rw rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.shell=0 $DEBUGFAIL" \
|
||||
-initrd "$TESTDIR"/initramfs.testing
|
||||
grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img || return 1
|
||||
}
|
||||
|
@ -30,7 +30,7 @@ test_run() {
|
||||
"$testdir"/run-qemu \
|
||||
"${disk_args[@]}" \
|
||||
-boot order=d \
|
||||
-append "panic=1 systemd.crash_reboot root=live:CDLABEL=LiveCD live rw quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.shell=0 $DEBUGFAIL" \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=live:CDLABEL=LiveCD live rw quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.shell=0 $DEBUGFAIL" \
|
||||
-initrd "$TESTDIR"/initramfs.testing
|
||||
|
||||
# mediacheck test with qemu GUI
|
||||
|
@ -19,7 +19,7 @@ test_run() {
|
||||
|
||||
"$testdir"/run-qemu \
|
||||
"${disk_args[@]}" \
|
||||
-append "panic=1 systemd.crash_reboot root=/dev/dracut/root rw rd.auto=1 quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.debug rd.shell=0 $DEBUGFAIL" \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=/dev/dracut/root rw rd.auto=1 quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.debug rd.shell=0 $DEBUGFAIL" \
|
||||
-initrd "$TESTDIR"/initramfs.testing || return 1
|
||||
grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img || return 1
|
||||
}
|
||||
|
@ -15,10 +15,6 @@ wait_for_if_link() {
|
||||
while [ $cnt -lt 600 ]; do
|
||||
li=$(ip -o link show dev "$1" 2> /dev/null)
|
||||
[ -n "$li" ] && return 0
|
||||
if [[ $2 ]]; then
|
||||
li=$(ip -o link show dev "$2" 2> /dev/null)
|
||||
[ -n "$li" ] && return 0
|
||||
fi
|
||||
sleep 0.1
|
||||
cnt=$((cnt + 1))
|
||||
done
|
||||
@ -52,11 +48,10 @@ linkup() {
|
||||
wait_for_if_link "$1" 2> /dev/null && ip link set "$1" up 2> /dev/null && wait_for_if_up "$1" 2> /dev/null
|
||||
}
|
||||
|
||||
wait_for_if_link eth0 enp0s1
|
||||
wait_for_if_link enp0s1
|
||||
|
||||
ip addr add 127.0.0.1/8 dev lo
|
||||
ip link set lo up
|
||||
ip link set dev eth0 name enp0s1
|
||||
ip addr add 192.168.50.1/24 dev enp0s1
|
||||
ip addr add 192.168.50.2/24 dev enp0s1
|
||||
ip addr add 192.168.50.3/24 dev enp0s1
|
||||
|
@ -34,7 +34,7 @@ run_server() {
|
||||
-net nic,macaddr=52:54:00:12:34:56,model=e1000 \
|
||||
-serial "${SERIAL:-"file:$TESTDIR/server.log"}" \
|
||||
-watchdog i6300esb -watchdog-action poweroff \
|
||||
-append "panic=1 quiet root=LABEL=dracut rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 quiet root=LABEL=dracut rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
|
||||
-initrd "$TESTDIR"/initramfs.server \
|
||||
-pidfile "$TESTDIR"/server.pid -daemonize || return 1
|
||||
chmod 644 "$TESTDIR"/server.pid || return 1
|
||||
@ -79,7 +79,7 @@ client_test() {
|
||||
-net nic,macaddr="$mac",model=e1000 \
|
||||
-net socket,connect=127.0.0.1:12320 \
|
||||
-watchdog i6300esb -watchdog-action poweroff \
|
||||
-append "panic=1 systemd.crash_reboot rd.shell=0 $cmdline $DEBUGFAIL rd.retry=10 quiet ro console=ttyS0,115200n81 selinux=0" \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot rd.shell=0 $cmdline $DEBUGFAIL rd.retry=10 quiet ro console=ttyS0,115200n81 selinux=0" \
|
||||
-initrd "$TESTDIR"/initramfs.testing
|
||||
|
||||
# shellcheck disable=SC2181
|
||||
|
@ -36,7 +36,7 @@ run_server() {
|
||||
-net nic,macaddr=52:54:00:12:34:56,model=e1000 \
|
||||
-net nic,macaddr=52:54:00:12:34:57,model=e1000 \
|
||||
-net socket,listen=127.0.0.1:12330 \
|
||||
-append "panic=1 quiet root=/dev/disk/by-id/ata-disk_serverroot rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 quiet root=/dev/disk/by-id/ata-disk_serverroot rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
|
||||
-initrd "$TESTDIR"/initramfs.server \
|
||||
-pidfile "$TESTDIR"/server.pid -daemonize || return 1
|
||||
chmod 644 "$TESTDIR"/server.pid || return 1
|
||||
@ -74,7 +74,7 @@ run_client() {
|
||||
-net nic,macaddr=52:54:00:12:34:01,model=e1000 \
|
||||
-net socket,connect=127.0.0.1:12330 \
|
||||
-acpitable file=ibft.table \
|
||||
-append "panic=1 systemd.crash_reboot rw rd.auto rd.retry=50 console=ttyS0,115200n81 selinux=0 rd.debug=0 rd.shell=0 $DEBUGFAIL $*" \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot rw rd.auto rd.retry=50 console=ttyS0,115200n81 selinux=0 rd.debug=0 rd.shell=0 $DEBUGFAIL $*" \
|
||||
-initrd "$TESTDIR"/initramfs.testing
|
||||
|
||||
# shellcheck disable=SC2181
|
||||
@ -227,6 +227,7 @@ test_setup() {
|
||||
# Make server root
|
||||
dd if=/dev/zero of="$TESTDIR"/server.ext3 bs=1M count=120
|
||||
|
||||
# shellcheck disable=SC2031
|
||||
export kernel=$KVERSION
|
||||
rm -rf -- "$TESTDIR"/overlay
|
||||
(
|
||||
|
@ -53,11 +53,9 @@ wait_for_if_link enp0s2
|
||||
ip addr add 127.0.0.1/8 dev lo
|
||||
ip link set lo up
|
||||
|
||||
ip link set dev eth0 name enp0s1
|
||||
ip addr add 192.168.50.1/24 dev enp0s1
|
||||
linkup enp0s1
|
||||
|
||||
ip link set dev eth1 name enp0s2
|
||||
ip addr add 192.168.51.1/24 dev enp0s2
|
||||
linkup enp0s2
|
||||
|
||||
|
@ -36,7 +36,7 @@ run_server() {
|
||||
-net nic,macaddr=52:54:00:12:34:56,model=e1000 \
|
||||
-net nic,macaddr=52:54:00:12:34:57,model=e1000 \
|
||||
-net socket,listen=127.0.0.1:12331 \
|
||||
-append "panic=1 systemd.crash_reboot root=/dev/disk/by-id/ata-disk_serverroot rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=/dev/disk/by-id/ata-disk_serverroot rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
|
||||
-initrd "$TESTDIR"/initramfs.server \
|
||||
-pidfile "$TESTDIR"/server.pid -daemonize || return 1
|
||||
chmod 644 "$TESTDIR"/server.pid || return 1
|
||||
@ -72,7 +72,7 @@ run_client() {
|
||||
-net nic,macaddr=52:54:00:12:34:00,model=e1000 \
|
||||
-net nic,macaddr=52:54:00:12:34:01,model=e1000 \
|
||||
-net socket,connect=127.0.0.1:12331 \
|
||||
-append "panic=1 systemd.crash_reboot rw rd.auto rd.retry=50 console=ttyS0,115200n81 selinux=0 rd.debug=0 rd.shell=0 $DEBUGFAIL $*" \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot rw rd.auto rd.retry=50 console=ttyS0,115200n81 selinux=0 rd.debug=0 rd.shell=0 $DEBUGFAIL $*" \
|
||||
-initrd "$TESTDIR"/initramfs.testing
|
||||
if ! grep -U --binary-files=binary -F -m 1 -q iscsi-OK "$TESTDIR"/marker.img; then
|
||||
echo "CLIENT TEST END: $test_name [FAILED - BAD EXIT]"
|
||||
@ -231,6 +231,7 @@ test_setup() {
|
||||
# Make server root
|
||||
echo "MAKE SERVER ROOT"
|
||||
|
||||
# shellcheck disable=SC2031
|
||||
export kernel=$KVERSION
|
||||
rm -rf -- "$TESTDIR"/overlay
|
||||
(
|
||||
|
@ -47,7 +47,7 @@ run_server() {
|
||||
-serial "${SERIAL:-"file:$TESTDIR/server.log"}" \
|
||||
-net nic,macaddr=52:54:00:12:34:56,model=e1000 \
|
||||
-net socket,listen=127.0.0.1:12340 \
|
||||
-append "panic=1 rd.luks=0 systemd.crash_reboot quiet root=/dev/disk/by-id/ata-disk_serverroot rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 rd.luks=0 systemd.crash_reboot quiet root=/dev/disk/by-id/ata-disk_serverroot rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
|
||||
-initrd "$TESTDIR"/initramfs.server \
|
||||
-pidfile "$TESTDIR"/server.pid -daemonize || return 1
|
||||
chmod 644 "$TESTDIR"/server.pid || return 1
|
||||
@ -90,7 +90,7 @@ client_test() {
|
||||
"${disk_args[@]}" \
|
||||
-net nic,macaddr="$mac",model=e1000 \
|
||||
-net socket,connect=127.0.0.1:12340 \
|
||||
-append "panic=1 systemd.crash_reboot rd.shell=0 $cmdline $DEBUGFAIL rd.auto rd.info rd.retry=10 ro console=ttyS0,115200n81 selinux=0 " \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot rd.shell=0 $cmdline $DEBUGFAIL rd.auto rd.info rd.retry=10 ro console=ttyS0,115200n81 selinux=0 " \
|
||||
-initrd "$TESTDIR"/initramfs.testing
|
||||
|
||||
# shellcheck disable=SC2181
|
||||
@ -367,6 +367,7 @@ make_client_root() {
|
||||
|
||||
make_server_root() {
|
||||
rm -fr "$TESTDIR"/overlay
|
||||
# shellcheck disable=SC2031
|
||||
export kernel=$KVERSION
|
||||
(
|
||||
mkdir -p "$TESTDIR"/overlay/source
|
||||
|
@ -15,14 +15,14 @@ for i in /sys/class/net/*; do
|
||||
grep -q connection-uuid= "$state" 2> /dev/null || continue
|
||||
i=${i##*/}
|
||||
ip link show "$i" | grep -q master && continue
|
||||
IFACES+="$i "
|
||||
IFACES="${IFACES}${i} "
|
||||
done
|
||||
for i in /run/initramfs/net.*.did-setup; do
|
||||
# booting with network-legacy module
|
||||
[ -f "$i" ] || continue
|
||||
strglobin "$i" ":*:*:*:*:" && continue
|
||||
i=${i%.did-setup}
|
||||
IFACES+="${i##*/net.} "
|
||||
IFACES="${IFACES}${i##*/net.} "
|
||||
done
|
||||
{
|
||||
echo "OK"
|
||||
|
@ -32,7 +32,7 @@ run_server() {
|
||||
-net nic,macaddr=52:54:01:12:34:56,model=e1000 \
|
||||
-serial "${SERIAL:-"file:$TESTDIR/server.log"}" \
|
||||
-watchdog i6300esb -watchdog-action poweroff \
|
||||
-append "panic=1 systemd.crash_reboot loglevel=7 root=LABEL=dracut rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0" \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot loglevel=7 root=LABEL=dracut rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0" \
|
||||
-initrd "$TESTDIR"/initramfs.server \
|
||||
-pidfile "$TESTDIR"/server.pid -daemonize || return 1
|
||||
|
||||
@ -82,7 +82,7 @@ client_test() {
|
||||
-device e1000,netdev=n1,mac=52:54:00:12:34:98 \
|
||||
-device e1000,netdev=n2,mac=52:54:00:12:34:99 \
|
||||
-watchdog i6300esb -watchdog-action poweroff \
|
||||
-append "quiet rd.net.timeout.dhcp=3 panic=1 systemd.crash_reboot rd.shell=0 $cmdline $DEBUGFAIL rd.retry=5 ro console=ttyS0,115200n81 selinux=0 init=/sbin/init rd.debug systemd.log_target=console" \
|
||||
-append "quiet rd.net.timeout.dhcp=3 panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot rd.shell=0 $cmdline $DEBUGFAIL rd.retry=5 ro console=ttyS0,115200n81 selinux=0 init=/sbin/init rd.debug systemd.log_target=console" \
|
||||
-initrd "$TESTDIR"/initramfs.testing || return 1
|
||||
|
||||
{
|
||||
|
@ -2,5 +2,5 @@
|
||||
OriginalName=*
|
||||
|
||||
[Link]
|
||||
NamePolicy=keep kernel database onboard slot path
|
||||
NamePolicy=mac
|
||||
MACAddressPolicy=keep
|
||||
|
@ -17,10 +17,6 @@ wait_for_if_link() {
|
||||
|
||||
li=$(ip -o link show dev "$1" 2> /dev/null)
|
||||
[ -n "$li" ] && return 0
|
||||
if [[ $2 ]]; then
|
||||
li=$(ip -o link show dev "$2" 2> /dev/null)
|
||||
[ -n "$li" ] && return 0
|
||||
fi
|
||||
sleep 0.1
|
||||
cnt=$((cnt + 1))
|
||||
done
|
||||
@ -58,38 +54,39 @@ udevadm settle
|
||||
|
||||
ip link show
|
||||
|
||||
wait_for_if_link eth0 ens3
|
||||
wait_for_if_link eth1 ens4
|
||||
wait_for_if_link eth2 ens5
|
||||
wait_for_if_link eth3 ens6
|
||||
wait_for_if_link enx525401123456
|
||||
wait_for_if_link enx525401123457
|
||||
wait_for_if_link enx525401123458
|
||||
wait_for_if_link enx525401123459
|
||||
|
||||
ip link set dev enx525401123456 name net1
|
||||
ip link set dev enx525401123457 name net2
|
||||
ip link set dev enx525401123458 name net3
|
||||
ip link set dev enx525401123459 name net4
|
||||
|
||||
modprobe --all -b -q 8021q ipvlan macvlan
|
||||
: > /dev/watchdog
|
||||
ip addr add 127.0.0.1/8 dev lo
|
||||
linkup lo
|
||||
ip link set dev eth0 name ens3
|
||||
ip addr add 192.168.50.1/24 dev ens3
|
||||
linkup ens3
|
||||
ip addr add 192.168.50.1/24 dev net1
|
||||
linkup net1
|
||||
: > /dev/watchdog
|
||||
ip link set dev eth1 name ens4
|
||||
ip link add dev ens4.1 link ens4 type vlan id 1
|
||||
ip link add dev ens4.2 link ens4 type vlan id 2
|
||||
ip link add dev ens4.3 link ens4 type vlan id 3
|
||||
ip link add dev ens4.4 link ens4 type vlan id 4
|
||||
ip addr add 192.168.54.1/24 dev ens4.1
|
||||
ip addr add 192.168.55.1/24 dev ens4.2
|
||||
ip addr add 192.168.56.1/24 dev ens4.3
|
||||
ip addr add 192.168.57.1/24 dev ens4.4
|
||||
linkup ens4
|
||||
ip link set dev ens4.1 up
|
||||
ip link set dev ens4.2 up
|
||||
ip link set dev ens4.3 up
|
||||
ip link set dev ens4.4 up
|
||||
ip link set dev eth2 name ens5
|
||||
ip addr add 192.168.51.1/24 dev ens5
|
||||
linkup ens5
|
||||
ip link set dev eth3 name ens6
|
||||
linkup ens6
|
||||
ip link add dev net2.1 link net2 type vlan id 1
|
||||
ip link add dev net2.2 link net2 type vlan id 2
|
||||
ip link add dev net2.3 link net2 type vlan id 3
|
||||
ip link add dev net2.4 link net2 type vlan id 4
|
||||
ip addr add 192.168.54.1/24 dev net2.1
|
||||
ip addr add 192.168.55.1/24 dev net2.2
|
||||
ip addr add 192.168.56.1/24 dev net2.3
|
||||
ip addr add 192.168.57.1/24 dev net2.4
|
||||
linkup net2
|
||||
ip link set dev net2.1 up
|
||||
ip link set dev net2.2 up
|
||||
ip link set dev net2.3 up
|
||||
ip link set dev net2.4 up
|
||||
ip addr add 192.168.51.1/24 dev net3
|
||||
linkup net3
|
||||
linkup net4
|
||||
: > /dev/watchdog
|
||||
modprobe af_packet
|
||||
: > /dev/watchdog
|
||||
@ -120,10 +117,10 @@ exportfs -r
|
||||
: > /dev/watchdog
|
||||
chmod 777 /var/lib/dhcpd/dhcpd.leases
|
||||
: > /dev/watchdog
|
||||
dhcpd -cf /etc/dhcpd.conf -lf /var/lib/dhcpd/dhcpd.leases ens3 ens5
|
||||
dhcpd -cf /etc/dhcpd.conf -lf /var/lib/dhcpd/dhcpd.leases net1 net3
|
||||
#echo -n 'V' : > /dev/watchdog
|
||||
#sh -i
|
||||
#tcpdump -i ens3
|
||||
#tcpdump -i net1
|
||||
# Wait forever for the VM to die
|
||||
echo "Serving"
|
||||
while :; do
|
||||
|
@ -25,18 +25,18 @@ run_server() {
|
||||
echo "MULTINIC TEST SETUP: Starting DHCP/NFS server"
|
||||
|
||||
"$testdir"/run-qemu \
|
||||
-hda "$TESTDIR"/server.ext3 \
|
||||
-netdev socket,id=n0,listen=127.0.0.1:12370 \
|
||||
-netdev socket,id=n1,listen=127.0.0.1:12371 \
|
||||
-netdev socket,id=n2,listen=127.0.0.1:12372 \
|
||||
-netdev socket,id=n3,listen=127.0.0.1:12373 \
|
||||
-device e1000,netdev=n0,mac=52:54:01:12:34:56 \
|
||||
-device e1000,netdev=n1,mac=52:54:01:12:34:57 \
|
||||
-device e1000,netdev=n2,mac=52:54:01:12:34:58 \
|
||||
-device e1000,netdev=n3,mac=52:54:01:12:34:59 \
|
||||
-device virtio-net-pci,netdev=n0,mac=52:54:01:12:34:56 \
|
||||
-device virtio-net-pci,netdev=n1,mac=52:54:01:12:34:57 \
|
||||
-device virtio-net-pci,netdev=n2,mac=52:54:01:12:34:58 \
|
||||
-device virtio-net-pci,netdev=n3,mac=52:54:01:12:34:59 \
|
||||
-hda "$TESTDIR"/server.ext3 \
|
||||
-serial "${SERIAL:-"file:$TESTDIR/server.log"}" \
|
||||
-watchdog i6300esb -watchdog-action poweroff \
|
||||
-append "panic=1 loglevel=7 root=LABEL=dracut rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 rd.debug" \
|
||||
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 loglevel=7 root=LABEL=dracut rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 rd.debug" \
|
||||
-initrd "$TESTDIR"/initramfs.server \
|
||||
-pidfile "$TESTDIR"/server.pid -daemonize || return 1
|
||||
chmod 644 -- "$TESTDIR"/server.pid || return 1
|
||||
@ -74,25 +74,33 @@ client_test() {
|
||||
return 1
|
||||
fi
|
||||
if [[ $do_vlan13 ]]; then
|
||||
nic1=" -netdev socket,connect=127.0.0.1:12371,id=n1"
|
||||
nic3=" -netdev socket,connect=127.0.0.1:12373,id=n3"
|
||||
nic1=("-netdev" "socket,connect=127.0.0.1:12371,id=n1")
|
||||
nic3=("-netdev" "socket,connect=127.0.0.1:12373,id=n3")
|
||||
else
|
||||
nic1=" -netdev hubport,id=n1,hubid=2"
|
||||
nic3=" -netdev hubport,id=n3,hubid=3"
|
||||
nic1=("-netdev" "hubport,id=n1,hubid=2")
|
||||
nic3=("-netdev" "hubport,id=n3,hubid=3")
|
||||
fi
|
||||
|
||||
"$testdir"/run-qemu \
|
||||
-hda "$TESTDIR"/client.img \
|
||||
-netdev socket,connect=127.0.0.1:12370,id=s1 \
|
||||
-netdev hubport,hubid=1,id=h1,netdev=s1 \
|
||||
-netdev hubport,hubid=1,id=h2 -device e1000,mac=52:54:00:12:34:01,netdev=h2 \
|
||||
-netdev hubport,hubid=1,id=h3 -device e1000,mac=52:54:00:12:34:02,netdev=h3 \
|
||||
"$nic1" -device e1000,mac=52:54:00:12:34:03,netdev=n1 \
|
||||
-netdev socket,connect=127.0.0.1:12372,id=n2 -device e1000,mac=52:54:00:12:34:04,netdev=n2 \
|
||||
"$nic3" -device e1000,mac=52:54:00:12:34:05,netdev=n3 \
|
||||
-netdev hubport,hubid=1,id=h2 -device virtio-net-pci,mac=52:54:00:12:34:01,netdev=h2 \
|
||||
-netdev hubport,hubid=1,id=h3 -device virtio-net-pci,mac=52:54:00:12:34:02,netdev=h3 \
|
||||
"${nic1[@]}" -device virtio-net-pci,mac=52:54:00:12:34:03,netdev=n1 \
|
||||
-netdev socket,connect=127.0.0.1:12372,id=n2 -device virtio-net-pci,mac=52:54:00:12:34:04,netdev=n2 \
|
||||
"${nic3[@]}" -device virtio-net-pci,mac=52:54:00:12:34:05,netdev=n3 \
|
||||
-hda "$TESTDIR"/client.img \
|
||||
-watchdog i6300esb -watchdog-action poweroff \
|
||||
-append "panic=1 $cmdline systemd.crash_reboot rd.debug $DEBUGFAIL rd.retry=5 rw console=ttyS0,115200n81 selinux=0 init=/sbin/init" \
|
||||
-initrd "$TESTDIR"/initramfs.testing
|
||||
-append "
|
||||
panic=1 hung_task_panic=1 oops=panic softlockup_panic=1
|
||||
ifname=net1:52:54:00:12:34:01
|
||||
ifname=net2:52:54:00:12:34:02
|
||||
ifname=net3:52:54:00:12:34:03
|
||||
ifname=net4:52:54:00:12:34:04
|
||||
ifname=net5:52:54:00:12:34:05
|
||||
$cmdline rd.net.timeout.dhcp=3 systemd.crash_reboot rd.debug
|
||||
$DEBUGFAIL rd.retry=5 rw console=ttyS0,115200n81 selinux=0 init=/sbin/init" \
|
||||
-initrd "$TESTDIR"/initramfs.testing || return 1
|
||||
|
||||
{
|
||||
read -r OK _
|
||||
@ -133,40 +141,40 @@ test_run() {
|
||||
|
||||
test_client() {
|
||||
if [[ $NM ]]; then
|
||||
EXPECT='ens3 ens5.0004 ens5.3 vlan0001 vlan2 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-* EOF '
|
||||
EXPECT='net1 net3.0004 net3.3 vlan0001 vlan2 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-* EOF '
|
||||
else
|
||||
EXPECT='ens3 ens5.0004 ens5.3 vlan0001 vlan2 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens3 # Generated by dracut initrd NAME="ens3" DEVICE="ens3" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp TYPE=Ethernet /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens5.0004 # Generated by dracut initrd NAME="ens5.0004" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.57.104" PREFIX="24" GATEWAY="192.168.57.1" TYPE=Vlan DEVICE="ens5.0004" VLAN=yes PHYSDEV="ens5" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens5.3 # Generated by dracut initrd NAME="ens5.3" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.56.103" PREFIX="24" GATEWAY="192.168.56.1" TYPE=Vlan DEVICE="ens5.3" VLAN=yes PHYSDEV="ens5" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-vlan0001 # Generated by dracut initrd NAME="vlan0001" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.54.101" PREFIX="24" GATEWAY="192.168.54.1" TYPE=Vlan DEVICE="vlan0001" VLAN=yes PHYSDEV="ens5" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-vlan2 # Generated by dracut initrd NAME="vlan2" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.55.102" PREFIX="24" GATEWAY="192.168.55.1" TYPE=Vlan DEVICE="vlan2" VLAN=yes PHYSDEV="ens5" EOF '
|
||||
EXPECT='net1 net3.0004 net3.3 vlan0001 vlan2 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-net1 # Generated by dracut initrd NAME="net1" HWADDR="52:54:00:12:34:01" DEVICE="net1" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp TYPE=Ethernet /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-net3.0004 # Generated by dracut initrd NAME="net3.0004" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.57.104" PREFIX="24" GATEWAY="192.168.57.1" TYPE=Vlan DEVICE="net3.0004" VLAN=yes PHYSDEV="net3" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-net3.3 # Generated by dracut initrd NAME="net3.3" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.56.103" PREFIX="24" GATEWAY="192.168.56.1" TYPE=Vlan DEVICE="net3.3" VLAN=yes PHYSDEV="net3" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-vlan0001 # Generated by dracut initrd NAME="vlan0001" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.54.101" PREFIX="24" GATEWAY="192.168.54.1" TYPE=Vlan DEVICE="vlan0001" VLAN=yes PHYSDEV="net3" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-vlan2 # Generated by dracut initrd NAME="vlan2" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.55.102" PREFIX="24" GATEWAY="192.168.55.1" TYPE=Vlan DEVICE="vlan2" VLAN=yes PHYSDEV="net3" EOF '
|
||||
fi
|
||||
|
||||
client_test "Multiple VLAN" \
|
||||
"yes" \
|
||||
"
|
||||
vlan=vlan0001:ens5
|
||||
vlan=vlan2:ens5
|
||||
vlan=ens5.3:ens5
|
||||
vlan=ens5.0004:ens5
|
||||
ip=ens3:dhcp
|
||||
vlan=vlan0001:net3
|
||||
vlan=vlan2:net3
|
||||
vlan=net3.3:net3
|
||||
vlan=net3.0004:net3
|
||||
ip=net1:dhcp
|
||||
ip=192.168.54.101::192.168.54.1:24:test:vlan0001:none
|
||||
ip=192.168.55.102::192.168.55.1:24:test:vlan2:none
|
||||
ip=192.168.56.103::192.168.56.1:24:test:ens5.3:none
|
||||
ip=192.168.57.104::192.168.57.1:24:test:ens5.0004:none
|
||||
ip=192.168.56.103::192.168.56.1:24:test:net3.3:none
|
||||
ip=192.168.57.104::192.168.57.1:24:test:net3.0004:none
|
||||
rd.neednet=1
|
||||
root=nfs:192.168.50.1:/nfs/client bootdev=ens3
|
||||
root=nfs:192.168.50.1:/nfs/client bootdev=net1
|
||||
" \
|
||||
"$EXPECT" \
|
||||
|| return 1
|
||||
|
||||
if [[ $NM ]]; then
|
||||
EXPECT='bond0 bond1 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-* EOF '
|
||||
EXPECT='bond0 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-* EOF '
|
||||
else
|
||||
EXPECT='bond0 bond1 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-bond0 # Generated by dracut initrd NAME="bond0" DEVICE="bond0" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp BONDING_OPTS="" NAME="bond0" TYPE=Bond /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-bond1 # Generated by dracut initrd NAME="bond1" DEVICE="bond1" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp BONDING_OPTS="" NAME="bond1" TYPE=Bond /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens3 # Generated by dracut initrd NAME="ens3" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond0" DEVICE="ens3" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens4 # Generated by dracut initrd NAME="ens4" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond0" DEVICE="ens4" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens6 # Generated by dracut initrd NAME="ens6" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond1" DEVICE="ens6" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens7 # Generated by dracut initrd NAME="ens7" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond1" DEVICE="ens7" EOF '
|
||||
EXPECT='bond0 bond1 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-bond0 # Generated by dracut initrd NAME="bond0" DEVICE="bond0" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp BONDING_OPTS="" NAME="bond0" TYPE=Bond /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-bond1 # Generated by dracut initrd NAME="bond1" DEVICE="bond1" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp BONDING_OPTS="" NAME="bond1" TYPE=Bond /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-net1 # Generated by dracut initrd NAME="net1" HWADDR="52:54:00:12:34:01" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond0" DEVICE="net1" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-net2 # Generated by dracut initrd NAME="net2" HWADDR="52:54:00:12:34:02" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond0" DEVICE="net2" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-net4 # Generated by dracut initrd NAME="net4" HWADDR="52:54:00:12:34:04" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond1" DEVICE="net4" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-net5 # Generated by dracut initrd NAME="net5" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond1" DEVICE="net5" EOF '
|
||||
fi
|
||||
|
||||
client_test "Multiple Bonds" \
|
||||
"yes" \
|
||||
"
|
||||
bond=bond0:ens3,ens4
|
||||
bond=bond1:ens6,ens7
|
||||
bond=bond0:net1,net2:miimon=100
|
||||
bond=bond1:net4,net5:miimon=100
|
||||
ip=bond0:dhcp
|
||||
ip=bond1:dhcp
|
||||
rd.neednet=1
|
||||
@ -178,14 +186,14 @@ root=nfs:192.168.50.1:/nfs/client bootdev=bond0
|
||||
if [[ $NM ]]; then
|
||||
EXPECT='br0 br1 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-* EOF '
|
||||
else
|
||||
EXPECT='br0 br1 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-br0 # Generated by dracut initrd NAME="br0" DEVICE="br0" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp TYPE=Bridge NAME="br0" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-br1 # Generated by dracut initrd NAME="br1" DEVICE="br1" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp TYPE=Bridge NAME="br1" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens3 # Generated by dracut initrd NAME="ens3" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br0" DEVICE="ens3" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens4 # Generated by dracut initrd NAME="ens4" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br0" DEVICE="ens4" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens6 # Generated by dracut initrd NAME="ens6" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br1" DEVICE="ens6" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens7 # Generated by dracut initrd NAME="ens7" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br1" DEVICE="ens7" EOF '
|
||||
EXPECT='br0 br1 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-br0 # Generated by dracut initrd NAME="br0" DEVICE="br0" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp TYPE=Bridge NAME="br0" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-br1 # Generated by dracut initrd NAME="br1" DEVICE="br1" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp TYPE=Bridge NAME="br1" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-net1 # Generated by dracut initrd NAME="net1" HWADDR="52:54:00:12:34:01" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br0" DEVICE="net1" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-net2 # Generated by dracut initrd NAME="net2" HWADDR="52:54:00:12:34:02" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br0" DEVICE="net2" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-net4 # Generated by dracut initrd NAME="net4" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br1" DEVICE="net4" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-net5 # Generated by dracut initrd NAME="net5" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br1" DEVICE="net5" EOF '
|
||||
fi
|
||||
|
||||
client_test "Multiple Bridges" \
|
||||
"no" \
|
||||
"
|
||||
bridge=br0:ens3,ens4
|
||||
bridge=br1:ens6,ens7
|
||||
bridge=br0:net1,net2
|
||||
bridge=br1:net4,net5
|
||||
ip=br0:dhcp
|
||||
ip=br1:dhcp
|
||||
rd.neednet=1
|
||||
@ -193,6 +201,7 @@ root=nfs:192.168.50.1:/nfs/client bootdev=br0
|
||||
" \
|
||||
"$EXPECT" \
|
||||
|| return 1
|
||||
|
||||
kill_server
|
||||
return 0
|
||||
}
|
||||
@ -343,30 +352,37 @@ test_setup() {
|
||||
# Make an overlay with needed tools for the test harness
|
||||
(
|
||||
# shellcheck disable=SC2031
|
||||
# shellcheck disable=SC2030
|
||||
export initdir="$TESTDIR"/overlay
|
||||
# shellcheck disable=SC1090
|
||||
. "$basedir"/dracut-init.sh
|
||||
inst_multiple poweroff shutdown
|
||||
inst_hook emergency 000 ./hard-off.sh
|
||||
inst_simple ./99-default.link /etc/systemd/network/99-default.link
|
||||
)
|
||||
|
||||
# Make server's dracut image
|
||||
"$basedir"/dracut.sh -l -i "$TESTDIR"/overlay / \
|
||||
--no-early-microcode \
|
||||
-m "udev-rules base rootfs-block fs-lib debug kernel-modules watchdog qemu" \
|
||||
-d "ipvlan macvlan af_packet piix ide-gd_mod ata_piix ext3 sd_mod nfsv2 nfsv3 nfsv4 nfs_acl nfs_layout_nfsv41_files nfsd e1000 i6300esb ib700wdt" \
|
||||
--no-hostonly-cmdline -N \
|
||||
-f "$TESTDIR"/initramfs.server "$KVERSION" || return 1
|
||||
|
||||
# Make client's dracut image
|
||||
"$basedir"/dracut.sh -l -i "$TESTDIR"/overlay / \
|
||||
--no-early-microcode \
|
||||
-o "plymouth ${OMIT_NETWORK}" \
|
||||
-a "debug ${USE_NETWORK}" \
|
||||
-d "ipvlan macvlan af_packet piix sd_mod sr_mod ata_piix ide-gd_mod e1000 nfsv2 nfsv3 nfsv4 nfs_acl nfs_layout_nfsv41_files sunrpc i6300esb ib700wdt" \
|
||||
-d "ipvlan macvlan af_packet piix sd_mod sr_mod ata_piix ide-gd_mod virtio-net nfsv2 nfsv3 nfsv4 nfs_acl nfs_layout_nfsv41_files sunrpc i6300esb ib700wdt" \
|
||||
--no-hostonly-cmdline -N \
|
||||
-f "$TESTDIR"/initramfs.testing "$KVERSION" || return 1
|
||||
|
||||
(
|
||||
# shellcheck disable=SC2031
|
||||
export initdir="$TESTDIR"/overlay
|
||||
# shellcheck disable=SC1090
|
||||
. "$basedir"/dracut-init.sh
|
||||
inst_simple ./99-default.link /etc/systemd/network/99-default.link
|
||||
inst_hook pre-mount 99 ./wait-if-server.sh
|
||||
)
|
||||
# Make server's dracut image
|
||||
"$basedir"/dracut.sh -l -i "$TESTDIR"/overlay / \
|
||||
--no-early-microcode \
|
||||
-m "udev-rules base rootfs-block fs-lib debug kernel-modules watchdog qemu network network-legacy" \
|
||||
-d "ipvlan macvlan af_packet piix ide-gd_mod ata_piix ext3 sd_mod nfsv2 nfsv3 nfsv4 nfs_acl nfs_layout_nfsv41_files nfsd virtio-net i6300esb ib700wdt" \
|
||||
--no-hostonly-cmdline -N \
|
||||
-f "$TESTDIR"/initramfs.server "$KVERSION" || return 1
|
||||
}
|
||||
|
||||
kill_server() {
|
||||
|
6
test/TEST-60-BONDBRIDGEVLANIFCFG/wait-if-server.sh
Normal file
6
test/TEST-60-BONDBRIDGEVLANIFCFG/wait-if-server.sh
Normal file
@ -0,0 +1,6 @@
|
||||
#!/bin/sh
|
||||
. /lib/net-lib.sh
|
||||
wait_for_if_link enx525401123456
|
||||
wait_for_if_link enx525401123457
|
||||
wait_for_if_link enx525401123458
|
||||
wait_for_if_link enx525401123459
|
Loading…
Reference in New Issue
Block a user