Re: [PATCH] docs: admin-guide: merge sections for the kernel.modprobe sysctl

From: Stephen Kitt
Date: Tue Apr 14 2020 - 17:33:07 EST


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: pgpOdlyLJvUTl.pgp
Description: OpenPGP digital signature