Re: [PATCH] docs: Document panic_on_rcu_stall default behavior

From: Kunwu Chan

Date: Tue May 12 2026 - 04:08:27 EST


May 11, 2026 at 3:54 AM, "Paul E. McKenney" <paulmck@xxxxxxxxxx mailto:paulmck@xxxxxxxxxx?to=%22Paul%20E.%20McKenney%22%20%3Cpaulmck%40kernel.org%3E > wrote:


>
> On Sat, May 09, 2026 at 05:12:14PM +0800, Kunwu Chan wrote:
>
> >
> > From: Kunwu Chan <kunwu.chan@xxxxxxxxx>
> >
> > Commit ab875b3e179f ("rcu: Add BOOTPARAM_RCU_STALL_PANIC
> > Kconfig option") made the default value of
> > kernel.panic_on_rcu_stall depend on
> > CONFIG_BOOTPARAM_RCU_STALL_PANIC.
> >
> > Document this in kernel.rst
> >
> > Signed-off-by: Kunwu Chan <kunwu.chan@xxxxxxxxx>
> >
> This commit depends on the commit you call out above, which, given Linus
> Torvalds's reaction, is unlikely to make it into mainline. :-(
>
> A likely workaround is to use the existing sysctl kernel boot parameter,
> as in: "sysctl.kernel.panic_on_rcu_stall=1".
>
> This can also be embedded into the kernel image using the bootconfig
> facility. To do this, build your kernel with the following Kconfig
> options:
>
> CONFIG_BOOT_CONFIG=y
> CONFIG_BOOT_CONFIG_FORCE=y
> CONFIG_BOOT_CONFIG_EMBED=y
> CONFIG_BOOT_CONFIG_EMBED_FILE=".bootconfig"
>
Hi Paul,

Thank you for the detailed explanation and the alternative solutions.
I wasn't aware of the feedback from Linus regarding the dependency commit.
Since it's unlikely to be merged into mainline, :-(
it makes sense to drop this documentation patch as well.

> Then create your ".bootconfig" file in the top-level directory of your
> Linux-kernel source tree:
>
> kernel {
> sysctl.kernel.panic_on_rcu_stall=1
> }
>
> You can also pass parameters to the "init" process by adding an "init"
> stanza to your .bootconfig file. See the Linux-kernel bootconfig
> documentation for more information:
>
> Documentation/admin-guide/bootconfig.rst
>
I will look into the bootconfig and sysctl approaches you suggested.
Thanks again for pointing me in the right direction!

> Thanx, Paul
>

Best regards,
Kunwu Chan
> >
> > ---
> > Documentation/admin-guide/sysctl/kernel.rst | 4 ++++
> > 1 file changed, 4 insertions(+)
> >
> > diff --git a/Documentation/admin-guide/sysctl/kernel.rst b/Documentation/admin-guide/sysctl/kernel.rst
> > index c6994e55d141..99598a83f830 100644
> > --- a/Documentation/admin-guide/sysctl/kernel.rst
> > +++ b/Documentation/admin-guide/sysctl/kernel.rst
> > @@ -948,6 +948,10 @@ panic_on_rcu_stall
> > When set to 1, calls panic() after RCU stall detection messages. This
> > is useful to define the root cause of RCU stalls using a vmcore.
> >
> > +The default value can be configured at build time via
> > +``CONFIG_BOOTPARAM_RCU_STALL_PANIC``. Runtime updates to this sysctl
> > +always override the built-in default.
> > +
> > = ============================================================
> > 0 Do not panic() when RCU stall takes place, default behavior.
> > 1 panic() after printing RCU stall messages.
> > --
> > 2.43.0
> >
>