Commit
bced7e3 accidentally reintroduced issue #7595 which was
previously addressed by
517d247. Re-apply the original fix to
resolve the issue and include a comment to make it clear the
ordering is important.
Reviewed-by: Ryan Moeller <ryan@ixsystems.com>
Reviewed-by: Matthew Thode <prometheanfire@gentoo.org>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #9302
Closes #9208
KERNEL_DIR="$(readlink --canonicalize-existing "$1")"
MODULES=()
+
+# When integrated in to a monolithic kernel the spl module must appear
+# first. This ensures its module initialization function is run before
+# any of the other module initialization functions which depend on it.
+MODULES+="spl"
+
for MODULE_DIR in module/* module/os/linux/*
do
[ -d "$MODULE_DIR" ] || continue
+ [ "spl" = "${MODULE_DIR##*/}" ] && continue
[ "os" = "${MODULE_DIR#*/}" ] && continue
MODULES+=("${MODULE_DIR#*/}")
done