Disable 90-zfs.rules for test suite
When running the zconfig.sh, zpios-sanity.sh, and zfault.sh from the installed packages the 90-zfs.rules can cause failures. These will occur because the test suite assumes it has full control over loading/unloading the module stack. If the stack gets asynchronously loaded by the udev rule the test suite will treat it as a failure. Resolve the issue by disabling the offending rule during the tests and enabling it on exit. Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
This commit is contained in:
parent
86f35f34f4
commit
5cbf6db937
|
@ -36,6 +36,9 @@ libexecdir=@libexecdir@
|
|||
pkglibexecdir=${libexecdir}/@PACKAGE@
|
||||
bindir=@bindir@
|
||||
sbindir=@sbindir@
|
||||
udevdir=@udevdir@
|
||||
udevruledir=@udevruledir@
|
||||
sysconfdir=@sysconfdir@
|
||||
|
||||
ETCDIR=${ETCDIR:-/etc}
|
||||
DEVDIR=${DEVDIR:-/dev/disk/zpool}
|
||||
|
@ -113,6 +116,19 @@ skip() {
|
|||
echo -e "${COLOR_BROWN}Skip${COLOR_RESET}"
|
||||
}
|
||||
|
||||
init() {
|
||||
# Disable the udev rule 90-zfs.rules to prevent the zfs module
|
||||
# stack from being loaded due to the detection of a zfs device.
|
||||
# This is important because the test scripts require full control
|
||||
# over when and how the modules are loaded/unloaded. A trap is
|
||||
# set to ensure the udev rule is correctly replaced on exit.
|
||||
local RULE=${udevruledir}/90-zfs.rules
|
||||
if test -e ${RULE}; then
|
||||
trap "mv ${RULE}.disabled ${RULE}; exit $?" INT TERM EXIT
|
||||
mv ${RULE} ${RULE}.disabled
|
||||
fi
|
||||
}
|
||||
|
||||
spl_dump_log() {
|
||||
${SYSCTL} -w kernel.spl.debug.dump=1 &>/dev/null
|
||||
local NAME=`dmesg | tail -n 1 | cut -f5 -d' '`
|
||||
|
|
|
@ -60,6 +60,9 @@ if [ $(id -u) != 0 ]; then
|
|||
die "Must run as root"
|
||||
fi
|
||||
|
||||
# Initialize the test suite
|
||||
init
|
||||
|
||||
# Perform pre-cleanup is requested
|
||||
if [ ${CLEANUP} ]; then
|
||||
${ZFS_SH} -u
|
||||
|
|
|
@ -86,6 +86,9 @@ if [ $(id -u) != 0 ]; then
|
|||
die "Must run as root"
|
||||
fi
|
||||
|
||||
# Initialize the test suite
|
||||
init
|
||||
|
||||
# Perform pre-cleanup is requested
|
||||
if [ ${CLEANUP} ]; then
|
||||
${ZFS_SH} -u
|
||||
|
|
|
@ -62,6 +62,9 @@ if [ $(id -u) != 0 ]; then
|
|||
die "Must run as root"
|
||||
fi
|
||||
|
||||
# Initialize the test suite
|
||||
init
|
||||
|
||||
# Perform pre-cleanup is requested
|
||||
if [ ${CLEANUP} ]; then
|
||||
${ZFS_SH} -u
|
||||
|
|
Loading…
Reference in New Issue