On Tue, 14 Apr 2020 10:24:30 -0700, Eric Biggers <ebiggers@xxxxxxxxxx> wrote: > From: Eric Biggers <ebiggers@xxxxxxxxxx> > > Documentation for the kernel.modprobe sysctl was added both by > commit 0317c5371e6a ("docs: merge debugging-modules.txt into > sysctl/kernel.rst") and by commit 6e7158250625 ("docs: admin-guide: > document the kernel.modprobe sysctl"), resulting in the same sysctl > being documented in two places. Merge these into one place. > > Signed-off-by: Eric Biggers <ebiggers@xxxxxxxxxx> Reviewed-by: Stephen Kitt <steve@xxxxxxx> Thanks for taking care of this! > --- > > Jon, could you take this through the docs tree as a fix for 5.7? > > Documentation/admin-guide/sysctl/kernel.rst | 47 +++++++++------------ > 1 file changed, 19 insertions(+), 28 deletions(-) > > diff --git a/Documentation/admin-guide/sysctl/kernel.rst > b/Documentation/admin-guide/sysctl/kernel.rst index > 39c95c0e13d30..0d427fd109419 100644 --- > a/Documentation/admin-guide/sysctl/kernel.rst +++ > b/Documentation/admin-guide/sysctl/kernel.rst @@ -390,9 +390,17 @@ When > ``kptr_restrict`` is set to 2, kernel pointers printed using modprobe > ======== > > -This gives the full path of the modprobe command which the kernel will > -use to load modules. This can be used to debug module loading > -requests:: > +The full path to the usermode helper for autoloading kernel modules, > +by default "/sbin/modprobe". This binary is executed when the kernel > +requests a module. For example, if userspace passes an unknown > +filesystem type to mount(), then the kernel will automatically request > +the corresponding filesystem module by executing this usermode helper. > +This usermode helper should insert the needed module into the kernel. > + > +This sysctl only affects module autoloading. It has no effect on the > +ability to explicitly insert modules. > + > +This sysctl can be used to debug module loading requests:: > > echo '#! /bin/sh' > /tmp/modprobe > echo 'echo "$@" >> /tmp/modprobe.log' >> /tmp/modprobe > @@ -400,10 +408,15 @@ requests:: > chmod a+x /tmp/modprobe > echo /tmp/modprobe > /proc/sys/kernel/modprobe > > -This only applies when the *kernel* is requesting that the module be > -loaded; it won't have any effect if the module is being loaded > -explicitly using ``modprobe`` from userspace. > +Alternatively, if this sysctl is set to the empty string, then module > +autoloading is completely disabled. The kernel will not try to > +execute a usermode helper at all, nor will it call the > +kernel_module_request LSM hook. > > +If CONFIG_STATIC_USERMODEHELPER=y is set in the kernel configuration, > +then the configured static usermode helper overrides this sysctl, > +except that the empty string is still accepted to completely disable > +module autoloading as described above. > > modules_disabled > ================ > @@ -446,28 +459,6 @@ Notes: > successful IPC object allocation. If an IPC object allocation syscall > fails, it is undefined if the value remains unmodified or is reset to > -1. > -modprobe: > -========= > - > -The path to the usermode helper for autoloading kernel modules, by > -default "/sbin/modprobe". This binary is executed when the kernel > -requests a module. For example, if userspace passes an unknown > -filesystem type to mount(), then the kernel will automatically request > -the corresponding filesystem module by executing this usermode helper. > -This usermode helper should insert the needed module into the kernel. > - > -This sysctl only affects module autoloading. It has no effect on the > -ability to explicitly insert modules. > - > -If this sysctl is set to the empty string, then module autoloading is > -completely disabled. The kernel will not try to execute a usermode > -helper at all, nor will it call the kernel_module_request LSM hook. > - > -If CONFIG_STATIC_USERMODEHELPER=y is set in the kernel configuration, > -then the configured static usermode helper overrides this sysctl, > -except that the empty string is still accepted to completely disable > -module autoloading as described above. > - > nmi_watchdog > ============ > > -- > 2.26.0.110.g2183baf09c-goog > Regards, Stephen
Attachment:
pgpoOkx5O27kb.pgp
Description: OpenPGP digital signature