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-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to