mirror of
https://github.com/edk2-porting/linux-next.git
synced 2025-01-21 20:13:58 +08:00
acf12c5e58
Currently, it is only possible to get kmsg dumps for panic and oops, or just panic, via "no-dump-oops". With "max-reason" it is possible to dump messages for other kmsg_dump events, for example emerg and shutdown. Signed-off-by: Pavel Tatashin <pasha.tatashin@soleen.com> Link: https://lore.kernel.org/lkml/20200515184434.8470-7-keescook@chromium.org/ Signed-off-by: Kees Cook <keescook@chromium.org>
61 lines
2.3 KiB
Plaintext
61 lines
2.3 KiB
Plaintext
Ramoops oops/panic logger
|
|
=========================
|
|
|
|
ramoops provides persistent RAM storage for oops and panics, so they can be
|
|
recovered after a reboot. This is a child-node of "/reserved-memory", and
|
|
is named "ramoops" after the backend, rather than "pstore" which is the
|
|
subsystem.
|
|
|
|
Parts of this storage may be set aside for other persistent log buffers, such
|
|
as kernel log messages, or for optional ECC error-correction data. The total
|
|
size of these optional buffers must fit in the reserved region.
|
|
|
|
Any remaining space will be used for a circular buffer of oops and panic
|
|
records. These records have a configurable size, with a size of 0 indicating
|
|
that they should be disabled.
|
|
|
|
At least one of "record-size", "console-size", "ftrace-size", or "pmsg-size"
|
|
must be set non-zero, but are otherwise optional as listed below.
|
|
|
|
|
|
Required properties:
|
|
|
|
- compatible: must be "ramoops"
|
|
|
|
- reg: region of memory that is preserved between reboots
|
|
|
|
|
|
Optional properties:
|
|
|
|
- ecc-size: enables ECC support and specifies ECC buffer size in bytes
|
|
(defaults to 0: no ECC)
|
|
|
|
- record-size: maximum size in bytes of each kmsg dump.
|
|
(defaults to 0: disabled)
|
|
|
|
- console-size: size in bytes of log buffer reserved for kernel messages
|
|
(defaults to 0: disabled)
|
|
|
|
- ftrace-size: size in bytes of log buffer reserved for function tracing and
|
|
profiling (defaults to 0: disabled)
|
|
|
|
- pmsg-size: size in bytes of log buffer reserved for userspace messages
|
|
(defaults to 0: disabled)
|
|
|
|
- unbuffered: if present, use unbuffered mappings to map the reserved region
|
|
(defaults to buffered mappings)
|
|
|
|
- max-reason: if present, sets maximum type of kmsg dump reasons to store
|
|
(defaults to 2: log Oopses and Panics). This can be set to INT_MAX to
|
|
store all kmsg dumps. See include/linux/kmsg_dump.h KMSG_DUMP_* for other
|
|
kmsg dump reason values. Setting this to 0 (KMSG_DUMP_UNDEF), means the
|
|
reason filtering will be controlled by the printk.always_kmsg_dump boot
|
|
param: if unset, it will be KMSG_DUMP_OOPS, otherwise KMSG_DUMP_MAX.
|
|
|
|
- no-dump-oops: deprecated, use max_reason instead. If present, and
|
|
max_reason is not specified, it is equivalent to max_reason = 1
|
|
(KMSG_DUMP_PANIC).
|
|
|
|
- flags: if present, pass ramoops behavioral flags (defaults to 0,
|
|
see include/linux/pstore_ram.h RAMOOPS_FLAG_* for flag values).
|