2010-12-28 22:25:21 +00:00
|
|
|
config PSTORE
|
2015-10-20 07:39:03 +00:00
|
|
|
tristate "Persistent store support"
|
2010-12-28 22:25:21 +00:00
|
|
|
default n
|
|
|
|
help
|
|
|
|
This option enables generic access to platform level
|
|
|
|
persistent storage via "pstore" filesystem that can
|
|
|
|
be mounted as /dev/pstore. Only useful if you have
|
|
|
|
a platform level driver that registers with pstore to
|
|
|
|
provide the data, so you probably should just go say "Y"
|
|
|
|
(or "M") to a platform specific persistent store driver
|
|
|
|
(e.g. ACPI_APEI on X86) which will select this for you.
|
|
|
|
If you don't have a platform persistent store driver,
|
|
|
|
say N.
|
2012-05-16 12:43:08 +00:00
|
|
|
|
2016-02-18 14:04:22 +00:00
|
|
|
choice
|
|
|
|
prompt "Choose compression algorithm"
|
|
|
|
depends on PSTORE
|
|
|
|
default PSTORE_ZLIB_COMPRESS
|
|
|
|
help
|
|
|
|
This option chooses compression algorithm.
|
|
|
|
|
2018-02-13 06:40:39 +00:00
|
|
|
Currently, pstore has support for 5 compression algorithms:
|
|
|
|
zlib, lzo, lz4, lz4hc and 842.
|
|
|
|
|
|
|
|
The default compression algorithm is zlib.
|
|
|
|
|
2016-02-18 14:04:22 +00:00
|
|
|
config PSTORE_ZLIB_COMPRESS
|
|
|
|
bool "ZLIB"
|
|
|
|
select ZLIB_DEFLATE
|
|
|
|
select ZLIB_INFLATE
|
|
|
|
help
|
|
|
|
This option enables ZLIB compression algorithm support.
|
|
|
|
|
|
|
|
config PSTORE_LZO_COMPRESS
|
|
|
|
bool "LZO"
|
|
|
|
select LZO_COMPRESS
|
|
|
|
select LZO_DECOMPRESS
|
|
|
|
help
|
|
|
|
This option enables LZO compression algorithm support.
|
|
|
|
|
|
|
|
config PSTORE_LZ4_COMPRESS
|
|
|
|
bool "LZ4"
|
|
|
|
select LZ4_COMPRESS
|
|
|
|
select LZ4_DECOMPRESS
|
|
|
|
help
|
|
|
|
This option enables LZ4 compression algorithm support.
|
2018-02-13 06:40:39 +00:00
|
|
|
|
|
|
|
config PSTORE_LZ4HC_COMPRESS
|
|
|
|
bool "LZ4HC"
|
|
|
|
select LZ4HC_COMPRESS
|
|
|
|
select LZ4_DECOMPRESS
|
|
|
|
help
|
|
|
|
This option enables LZ4HC (high compression) mode algorithm.
|
|
|
|
|
|
|
|
config PSTORE_842_COMPRESS
|
|
|
|
bool "842"
|
|
|
|
select 842_COMPRESS
|
|
|
|
select 842_DECOMPRESS
|
|
|
|
help
|
|
|
|
This option enables 842 compression algorithm support.
|
|
|
|
|
2016-02-18 14:04:22 +00:00
|
|
|
endchoice
|
|
|
|
|
2012-05-26 13:20:19 +00:00
|
|
|
config PSTORE_CONSOLE
|
|
|
|
bool "Log kernel console messages"
|
|
|
|
depends on PSTORE
|
|
|
|
help
|
|
|
|
When the option is enabled, pstore will log all kernel
|
|
|
|
messages, even if no oops or panic happened.
|
|
|
|
|
2015-01-17 00:01:10 +00:00
|
|
|
config PSTORE_PMSG
|
|
|
|
bool "Log user space messages"
|
|
|
|
depends on PSTORE
|
|
|
|
help
|
|
|
|
When the option is enabled, pstore will export a character
|
|
|
|
interface /dev/pmsg0 to log user space messages. On reboot
|
|
|
|
data can be retrieved from /sys/fs/pstore/pmsg-ramoops-[ID].
|
|
|
|
|
|
|
|
If unsure, say N.
|
|
|
|
|
2012-07-10 00:10:41 +00:00
|
|
|
config PSTORE_FTRACE
|
|
|
|
bool "Persistent function tracer"
|
|
|
|
depends on PSTORE
|
|
|
|
depends on FUNCTION_TRACER
|
pstore/ftrace: Convert to its own enable/disable debugfs knob
With this patch we no longer reuse function tracer infrastructure, now
we register our own tracer back-end via a debugfs knob.
It's a bit more code, but that is the only downside. On the bright side we
have:
- Ability to make persistent_ram module removable (when needed, we can
move ftrace_ops struct into a module). Note that persistent_ram is still
not removable for other reasons, but with this patch it's just one
thing less to worry about;
- Pstore part is more isolated from the generic function tracer. We tried
it already by registering our own tracer in available_tracers, but that
way we're loosing ability to see the traces while we record them to
pstore. This solution is somewhere in the middle: we only register
"internal ftracer" back-end, but not the "front-end";
- When there is only pstore tracing enabled, the kernel will only write
to the pstore buffer, omitting function tracer buffer (which, of course,
still can be enabled via 'echo function > current_tracer').
Suggested-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Anton Vorontsov <anton.vorontsov@linaro.org>
2012-07-17 21:26:15 +00:00
|
|
|
depends on DEBUG_FS
|
2012-07-10 00:10:41 +00:00
|
|
|
help
|
|
|
|
With this option kernel traces function calls into a persistent
|
|
|
|
ram buffer that can be decoded and dumped after reboot through
|
|
|
|
pstore filesystem. It can be used to determine what function
|
|
|
|
was last called before a reset or panic.
|
|
|
|
|
|
|
|
If unsure, say N.
|
|
|
|
|
2012-05-16 12:43:08 +00:00
|
|
|
config PSTORE_RAM
|
|
|
|
tristate "Log panic/oops to a RAM buffer"
|
|
|
|
depends on PSTORE
|
2012-05-17 07:15:08 +00:00
|
|
|
depends on HAS_IOMEM
|
|
|
|
depends on HAVE_MEMBLOCK
|
|
|
|
select REED_SOLOMON
|
|
|
|
select REED_SOLOMON_ENC8
|
|
|
|
select REED_SOLOMON_DEC8
|
2012-05-16 12:43:08 +00:00
|
|
|
help
|
|
|
|
This enables panic and oops messages to be logged to a circular
|
|
|
|
buffer in RAM where it can be read back at some later point.
|
|
|
|
|
|
|
|
Note that for historical reasons, the module will be named
|
|
|
|
"ramoops.ko".
|
|
|
|
|
2016-10-18 12:12:27 +00:00
|
|
|
For more information, see Documentation/admin-guide/ramoops.rst.
|