aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFernando ApesteguĂ­a <fernape@FreeBSD.org>2024-04-15 12:18:06 +0000
committerFernando ApesteguĂ­a <fernape@FreeBSD.org>2024-04-19 16:57:11 +0000
commitd3b6d70e0dfaa4e9496bddcbc212d7d3ea392800 (patch)
treebc5c65e78c118c0acdbb326aca75829dde8a0a44
parent8993d785a261ee92528b44dae5a629ce389de412 (diff)
downloadsrc-d3b6d70e0dfaa4e9496bddcbc212d7d3ea392800.tar.gz
src-d3b6d70e0dfaa4e9496bddcbc212d7d3ea392800.zip
freebsd-update(8): Use kern.module_path
Instead of tailored configuration files to look for module_path entries. Reported by: kevans@ Reviewed by: kevans, imp, zlei Approved by: kevans,zlei Differential Revision: https://reviews.freebsd.org/D44797
-rw-r--r--usr.sbin/freebsd-update/freebsd-update.sh14
1 files changed, 5 insertions, 9 deletions
diff --git a/usr.sbin/freebsd-update/freebsd-update.sh b/usr.sbin/freebsd-update/freebsd-update.sh
index d1cd46963a6c..9f5eaebfd64a 100644
--- a/usr.sbin/freebsd-update/freebsd-update.sh
+++ b/usr.sbin/freebsd-update/freebsd-update.sh
@@ -673,17 +673,13 @@ upgrade_check_kmod_ports() {
fi
# Most modules are in /boot/modules but we should actually look
- # in every path configured in module_path
- search_files="/boot/defaults/loader.conf /boot/loader.conf"
- pattern=$(grep -shE '^module_path=' ${search_files} |
- tail -1 |
- cut -f2 -d\" |
- tr ";" "|")
+ # in every module_path passed to the kernel:
+ pattern=$(sysctl -n kern.module_path | tr ";" "|")
if [ -z "${pattern}" ]; then
- # Not having module_path in loader.conf is probably an error.
- # Check at least the most common path
- pattern="/boot/modules"
+ echo "Empty kern.module_path sysctl. This should not happen."
+ echo "Aborting check of kernel modules installed from ports."
+ return
fi
# Check the pkg database for modules installed in those directories