svn commit: r346017 - in head: libexec/rc libexec/rc/rc.d share/man/man5
O. Hartmann
ohartmann at walstatt.org
Tue Sep 3 14:07:09 UTC 2019
On Sun, 7 Apr 2019 18:31:45 +0000 (UTC)
Chris Rees <crees at FreeBSD.org> wrote:
> Author: crees (doc,ports committer)
> Date: Sun Apr 7 18:31:45 2019
> New Revision: 346017
> URL: https://svnweb.freebsd.org/changeset/base/346017
>
> Log:
> Remove now unnecessary kldstat check before attempting to load modules.
>
> Since r233109, kldload has the -n option, which silently ignores options
> that are already loaded.
>
> https://lists.freebsd.org/pipermail/freebsd-rc/2018-December/003899.html
>
> Note that this script no longer reports if the module is already loaded,
> but it could be argued this wasn't particularly useful information.
>
> PR: docs/234248
> Reviewed by: bcr (docs), kib, rgrimes (visual)
> Approved by: jilles
> Differential Revision: https://reviews.freebsd.org/D18670
>
> Modified:
> head/libexec/rc/rc.d/abi
> head/libexec/rc/rc.d/bthidd
> head/libexec/rc/rc.d/cfumass
> head/libexec/rc/rc.d/kld
> head/libexec/rc/rc.d/mdconfig
> head/libexec/rc/rc.d/mdconfig2
> head/libexec/rc/rc.d/mountcritremote
> head/libexec/rc/rc.d/syscons
> head/libexec/rc/rc.subr
> head/share/man/man5/rc.conf.5
>
> Modified: head/libexec/rc/rc.d/abi
> ==============================================================================
> --- head/libexec/rc/rc.d/abi Sun Apr 7 18:24:26 2019 (r346016)
> +++ head/libexec/rc/rc.d/abi Sun Apr 7 18:31:45 2019 (r346017)
> @@ -27,10 +27,10 @@ linux_start()
> local _tmpdir
>
> echo -n ' linux'
> - load_kld -e 'linux(aout|elf)' linux
> + load_kld linux
> case `sysctl -n hw.machine_arch` in
> amd64)
> - load_kld -e 'linux64elf' linux64
> + load_kld linux64
> ;;
> esac
> if [ -x /compat/linux/sbin/ldconfigDisabled ]; then
>
> Modified: head/libexec/rc/rc.d/bthidd
> ==============================================================================
> --- head/libexec/rc/rc.d/bthidd Sun Apr 7 18:24:26 2019
> (r346016) +++ head/libexec/rc/rc.d/bthidd Sun Apr 7 18:31:45
> 2019 (r346017) @@ -34,11 +34,11 @@ evdev_enabled()
> bthidd_prestart()
> {
> if evdev_enabled; then
> - load_kld -m uinput uinput
> + load_kld uinput
> fi
> - load_kld -m kbdmux kbdmux
> - load_kld -m vkbd vkbd
> - load_kld -m ng_btsocket ng_btsocket
> + load_kld kbdmux
> + load_kld vkbd
> + load_kld ng_btsocket
> return 0
> }
>
>
> Modified: head/libexec/rc/rc.d/cfumass
> ==============================================================================
> --- head/libexec/rc/rc.d/cfumass Sun Apr 7 18:24:26 2019
> (r346016) +++ head/libexec/rc/rc.d/cfumass Sun Apr 7 18:31:45
> 2019 (r346017) @@ -75,7 +75,7 @@ cfumass_start()
> return "${err}"
> fi
>
> - load_kld -e cfumass cfumass
> + load_kld cfumass
>
> # If the template is already switched to Mass Storage, then reset
> # it to -1 to force the host to reenumerate it; otherwise it might
>
> Modified: head/libexec/rc/rc.d/kld
> ==============================================================================
> --- head/libexec/rc/rc.d/kld Sun Apr 7 18:24:26 2019 (r346016)
> +++ head/libexec/rc/rc.d/kld Sun Apr 7 18:31:45 2019 (r346017)
> @@ -46,7 +46,7 @@ kld_start()
>
> echo 'Loading kernel modules:'
> for _kld in $kld_list ; do
> - load_kld -e ${_kld}.ko $_kld
> + load_kld $_kld
> done
> }
>
>
> Modified: head/libexec/rc/rc.d/mdconfig
> ==============================================================================
> --- head/libexec/rc/rc.d/mdconfig Sun Apr 7 18:24:26 2019
> (r346016) +++ head/libexec/rc/rc.d/mdconfig Sun Apr 7 18:31:45
> 2019 (r346017) @@ -114,7 +114,7 @@ mdconfig_start()
> continue
> fi
> if [ "${_file}" != "${_file%.uzip}" ]; then
> - load_kld -m g_uzip geom_uzip ||
> return 3
> + load_kld geom_uzip || return 3
> # sleep a bit to allow creation
> of /dev/mdX.uzip sleep 2
> fi
>
> Modified: head/libexec/rc/rc.d/mdconfig2
> ==============================================================================
> --- head/libexec/rc/rc.d/mdconfig2 Sun Apr 7 18:24:26 2019
> (r346016) +++ head/libexec/rc/rc.d/mdconfig2 Sun Apr 7 18:31:45
> 2019 (r346017) @@ -123,7 +123,7 @@ mdconfig2_start()
> # been created.
> if [ "${_type}" = "vnode" -a "${_fs}" != "/" ]; then
> if [ "${_file}" != "${_file%.uzip}" ]; then
> - load_kld -m g_uzip geom_uzip || return 3
> + load_kld geom_uzip || return 3
> fi
> if is_readonly ${_fs}; then
> warn "${_fs} is mounted read-only, skipping
> ${_md}."
>
> Modified: head/libexec/rc/rc.d/mountcritremote
> ==============================================================================
> --- head/libexec/rc/rc.d/mountcritremote Sun Apr 7 18:24:26
> 2019 (r346016) +++ head/libexec/rc/rc.d/mountcritremote Sun
> Apr 7 18:31:45 2019 (r346017) @@ -27,7 +27,7 @@
> mountcritremote_precmd() case "`mount -d -a -t nfs 2> /dev/null`" in
> *mount_nfs*)
> # Handle absent nfs client support
> - load_kld -m nfs nfscl || return 1
> + load_kld nfscl || return 1
> ;;
> esac
> return 0
>
> Modified: head/libexec/rc/rc.d/syscons
> ==============================================================================
> --- head/libexec/rc/rc.d/syscons Sun Apr 7 18:24:26 2019
> (r346016) +++ head/libexec/rc/rc.d/syscons Sun Apr 7 18:31:45
> 2019 (r346017) @@ -346,7 +346,7 @@ syscons_start()
> for i in `kldstat | awk '$5 ~ "_saver\.ko$" { print $5 }'`;
> do kldunload ${i}
> done
> - load_kld -e _saver ${saver}_saver
> + load_kld ${saver}_saver
> ;;
> esac
>
>
> Modified: head/libexec/rc/rc.subr
> ==============================================================================
> --- head/libexec/rc/rc.subr Sun Apr 7 18:24:26 2019 (r346016)
> +++ head/libexec/rc/rc.subr Sun Apr 7 18:31:45 2019 (r346017)
> @@ -1853,48 +1853,29 @@ mount_md()
> }
>
> # Code common to scripts that need to load a kernel module
> -# if it isn't in the kernel yet. Syntax:
> -# load_kld [-e regex] [-m module] file
> -# where -e or -m chooses the way to check if the module
> -# is already loaded:
> -# regex is egrep'd in the output from `kldstat -v',
> -# module is passed to `kldstat -m'.
> -# The default way is as though `-m file' were specified.
> +# if it isn't in the kernel yet. Syntax:
> +# load_kld file
> load_kld()
> {
> - local _loaded _mod _opt _re
> + local _opt
>
> + # Silently ignore legacy options; they are unnecessary
> while getopts "e:m:" _opt; do
> case "$_opt" in
> - e) _re="$OPTARG" ;;
> - m) _mod="$OPTARG" ;;
> - *) err 3 'USAGE: load_kld [-e regex] [-m module] file' ;;
> + e) ;;
> + m) ;;
> + *) err 3 'USAGE: load_kld file' ;;
> esac
> done
> shift $(($OPTIND - 1))
> if [ $# -ne 1 ]; then
> - err 3 'USAGE: load_kld [-e regex] [-m module] file'
> + err 3 'USAGE: load_kld file'
> fi
> - _mod=${_mod:-$1}
> - _loaded=false
> - if [ -n "$_re" ]; then
> - if kldstat -v | egrep -q -e "$_re"; then
> - _loaded=true
> - fi
> + if ! kldload -n "$1"; then
> + warn "Unable to load kernel module $1"
> + return 1
> else
> - if kldstat -q -m "$_mod"; then
> - _loaded=true
> - fi
> - fi
> - if ! $_loaded; then
> - if ! kldload "$1"; then
> - warn "Unable to load kernel module $1"
> - return 1
> - else
> - info "$1 kernel module loaded."
> - fi
> - else
> - debug "load_kld: $1 kernel module already loaded."
> + info "$1 kernel module loaded."
> fi
> return 0
> }
>
> Modified: head/share/man/man5/rc.conf.5
> ==============================================================================
> --- head/share/man/man5/rc.conf.5 Sun Apr 7 18:24:26 2019
> (r346016) +++ head/share/man/man5/rc.conf.5 Sun Apr 7 18:31:45
> 2019 (r346017) @@ -24,7 +24,7 @@
> .\"
> .\" $FreeBSD$
> .\"
> -.Dd March 21, 2019
> +.Dd April 7, 2019
> .Dt RC.CONF 5
> .Os
> .Sh NAME
> @@ -249,9 +249,7 @@ Default
> .It Va kld_list
> .Pq Vt str
> A whitespace-separated list of kernel modules to load right after
> -the local disks are mounted, without any
> -.Pa .ko
> -extension or path.
> +the local disks are mounted, with optional path.
> Loading modules at this point in the boot process is
> much faster than doing it via
> .Pa /boot/loader.conf
> _______________________________________________
> svn-src-head at freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/svn-src-head
> To unsubscribe, send any mail to "svn-src-head-unsubscribe at freebsd.org"
It seems this patch breaks ZFS if ZFS is built-in kernel!
Having ZFS as kernel built-in leaves the system not mounting ANY(!) ZFS volume
at boot time, rendering servers unusable.
Mounting ZFS filesystems with "zfs mount -a" bring back the ZFS filesystems as
expected.
Regards,
oh
More information about the svn-src-all
mailing list