1
1
mirror of https://github.com/systemd/systemd-stable.git synced 2024-12-22 13:33:56 +03:00

pstore: don't enable crash_kexec_post_notifiers by default

commit f00c36641a enabled
crash_kexec_post_notifiers by default regardless of whether pstore
is enabled or not.

The original intention to enabled this option by default is that
it only affects kernel post-panic behavior, so should have no harm.
But this is not true if the user wants a reliable kdump.

crash_kexec_post_notifiers is known to cause problem with kdump,
and it's documented in kernel. It's not easy to fix the problem
because of how kdump works. Kdump expects the crashed kernel to
jump to an pre-loaded crash kernel, so doing any extra job before
the jump will increase the risk.

It depends on the user to choose between having a reliable kdump or
some other post-panic debug mechanic.

So it's better to keep this config untouched by default, or it may put
kdump at higher risk of failing silently. User should enable it by
uncommenting the config line manually if pstore is always needed.

Also add a inline comment inform user about the potential issue.

Thanks to Dave Young for finding out this issue.

Fixes #16661

Signed-off-by: Kairui Song <kasong@redhat.com>
This commit is contained in:
Kairui Song 2020-08-04 17:30:51 +08:00 committed by Lennart Poettering
parent dbb74162b2
commit edb8c98446

View File

@ -11,8 +11,13 @@
# control writes into pstore. # control writes into pstore.
# #
# The crash_kexec_post_notifiers parameter enables the kernel to write # The crash_kexec_post_notifiers parameter enables the kernel to write
# dmesg (including stack trace) into pstore upon a panic, and # dmesg (including stack trace) into pstore upon a panic even if kdump
# printk.always_kmsg_dump parameter enables the kernel to write dmesg # is loaded, only needed if you want to use pstore with kdump. Without
# this parameter, kdump could block writing to pstore for stability
# reason. Note this increases the risk of kdump failure even if pstore
# is not available.
#
# The printk.always_kmsg_dump parameter enables the kernel to write dmesg
# upon a normal shutdown (shutdown, reboot, halt). # upon a normal shutdown (shutdown, reboot, halt).
# #
# To configure the kernel parameters, uncomment the appropriate # To configure the kernel parameters, uncomment the appropriate
@ -26,4 +31,4 @@
d /var/lib/systemd/pstore 0755 root root 14d d /var/lib/systemd/pstore 0755 root root 14d
#w- /sys/module/printk/parameters/always_kmsg_dump - - - - Y #w- /sys/module/printk/parameters/always_kmsg_dump - - - - Y
w- /sys/module/kernel/parameters/crash_kexec_post_notifiers - - - - Y #w- /sys/module/kernel/parameters/crash_kexec_post_notifiers - - - - Y