blob: 09c19ef91526ccc41cd84edcd87c27915fafb8b7 [file] [log] [blame]
Tony Luckca01d6d2010-12-28 14:25:21 -08001config PSTORE
Geliang Tangee1d2672015-10-20 00:39:03 -07002 tristate "Persistent store support"
Arnd Bergmann58eb5b672018-03-15 16:34:08 +01003 select CRYPTO if PSTORE_COMPRESS
Tony Luckca01d6d2010-12-28 14:25:21 -08004 default n
5 help
6 This option enables generic access to platform level
7 persistent storage via "pstore" filesystem that can
8 be mounted as /dev/pstore. Only useful if you have
9 a platform level driver that registers with pstore to
10 provide the data, so you probably should just go say "Y"
11 (or "M") to a platform specific persistent store driver
12 (e.g. ACPI_APEI on X86) which will select this for you.
13 If you don't have a platform persistent store driver,
14 say N.
Anton Vorontsov1894a252012-05-16 05:43:08 -070015
Geliang Tangcb3bee02018-03-09 18:51:07 +080016config PSTORE_DEFLATE_COMPRESS
Arnd Bergmann58eb5b672018-03-15 16:34:08 +010017 tristate "DEFLATE (ZLIB) compression"
Kees Cookfe1d4752018-03-06 15:57:38 -080018 default y
19 depends on PSTORE
Geliang Tangcb3bee02018-03-09 18:51:07 +080020 select CRYPTO_DEFLATE
Kees Cookfe1d4752018-03-06 15:57:38 -080021 help
Geliang Tangcb3bee02018-03-09 18:51:07 +080022 This option enables DEFLATE (also known as ZLIB) compression
23 algorithm support.
Geliang Tang8cfc8dd2016-02-18 22:04:22 +080024
25config PSTORE_LZO_COMPRESS
Arnd Bergmann58eb5b672018-03-15 16:34:08 +010026 tristate "LZO compression"
Kees Cookfe1d4752018-03-06 15:57:38 -080027 depends on PSTORE
Geliang Tangcb3bee02018-03-09 18:51:07 +080028 select CRYPTO_LZO
Kees Cookfe1d4752018-03-06 15:57:38 -080029 help
30 This option enables LZO compression algorithm support.
Geliang Tang8cfc8dd2016-02-18 22:04:22 +080031
32config PSTORE_LZ4_COMPRESS
Arnd Bergmann58eb5b672018-03-15 16:34:08 +010033 tristate "LZ4 compression"
Kees Cookfe1d4752018-03-06 15:57:38 -080034 depends on PSTORE
Geliang Tangcb3bee02018-03-09 18:51:07 +080035 select CRYPTO_LZ4
Kees Cookfe1d4752018-03-06 15:57:38 -080036 help
37 This option enables LZ4 compression algorithm support.
Geliang Tang239b7162018-02-13 14:40:39 +080038
39config PSTORE_LZ4HC_COMPRESS
Arnd Bergmann58eb5b672018-03-15 16:34:08 +010040 tristate "LZ4HC compression"
Kees Cookfe1d4752018-03-06 15:57:38 -080041 depends on PSTORE
Geliang Tangcb3bee02018-03-09 18:51:07 +080042 select CRYPTO_LZ4HC
Geliang Tang239b7162018-02-13 14:40:39 +080043 help
44 This option enables LZ4HC (high compression) mode algorithm.
45
46config PSTORE_842_COMPRESS
Kees Cookfe1d4752018-03-06 15:57:38 -080047 bool "842 compression"
48 depends on PSTORE
Geliang Tangcb3bee02018-03-09 18:51:07 +080049 select CRYPTO_842
Geliang Tang239b7162018-02-13 14:40:39 +080050 help
51 This option enables 842 compression algorithm support.
52
Kees Cookfe1d4752018-03-06 15:57:38 -080053config PSTORE_COMPRESS
54 def_bool y
55 depends on PSTORE
Geliang Tangcb3bee02018-03-09 18:51:07 +080056 depends on PSTORE_DEFLATE_COMPRESS || PSTORE_LZO_COMPRESS || \
Kees Cookfe1d4752018-03-06 15:57:38 -080057 PSTORE_LZ4_COMPRESS || PSTORE_LZ4HC_COMPRESS || \
58 PSTORE_842_COMPRESS
59
60choice
61 prompt "Default pstore compression algorithm"
62 depends on PSTORE_COMPRESS
63 help
64 This option chooses the default active compression algorithm.
65 This change be changed at boot with "pstore.compress=..." on
66 the kernel command line.
67
68 Currently, pstore has support for 5 compression algorithms:
Geliang Tangcb3bee02018-03-09 18:51:07 +080069 deflate, lzo, lz4, lz4hc and 842.
Kees Cookfe1d4752018-03-06 15:57:38 -080070
Geliang Tangcb3bee02018-03-09 18:51:07 +080071 The default compression algorithm is deflate.
Kees Cookfe1d4752018-03-06 15:57:38 -080072
Geliang Tangcb3bee02018-03-09 18:51:07 +080073 config PSTORE_DEFLATE_COMPRESS_DEFAULT
Arnd Bergmann58eb5b672018-03-15 16:34:08 +010074 bool "deflate" if PSTORE_DEFLATE_COMPRESS
Kees Cookfe1d4752018-03-06 15:57:38 -080075
76 config PSTORE_LZO_COMPRESS_DEFAULT
Arnd Bergmann58eb5b672018-03-15 16:34:08 +010077 bool "lzo" if PSTORE_LZO_COMPRESS
Kees Cookfe1d4752018-03-06 15:57:38 -080078
79 config PSTORE_LZ4_COMPRESS_DEFAULT
Arnd Bergmann58eb5b672018-03-15 16:34:08 +010080 bool "lz4" if PSTORE_LZ4_COMPRESS
Kees Cookfe1d4752018-03-06 15:57:38 -080081
82 config PSTORE_LZ4HC_COMPRESS_DEFAULT
Arnd Bergmann58eb5b672018-03-15 16:34:08 +010083 bool "lz4hc" if PSTORE_LZ4HC_COMPRESS
Kees Cookfe1d4752018-03-06 15:57:38 -080084
85 config PSTORE_842_COMPRESS_DEFAULT
Arnd Bergmann58eb5b672018-03-15 16:34:08 +010086 bool "842" if PSTORE_842_COMPRESS
Kees Cookfe1d4752018-03-06 15:57:38 -080087
Geliang Tang8cfc8dd2016-02-18 22:04:22 +080088endchoice
89
Kees Cookfe1d4752018-03-06 15:57:38 -080090config PSTORE_COMPRESS_DEFAULT
91 string
92 depends on PSTORE_COMPRESS
Geliang Tangcb3bee02018-03-09 18:51:07 +080093 default "deflate" if PSTORE_DEFLATE_COMPRESS_DEFAULT
Kees Cookfe1d4752018-03-06 15:57:38 -080094 default "lzo" if PSTORE_LZO_COMPRESS_DEFAULT
95 default "lz4" if PSTORE_LZ4_COMPRESS_DEFAULT
96 default "lz4hc" if PSTORE_LZ4HC_COMPRESS_DEFAULT
97 default "842" if PSTORE_842_COMPRESS_DEFAULT
98
Anton Vorontsovf29e5952012-05-26 06:20:19 -070099config PSTORE_CONSOLE
100 bool "Log kernel console messages"
101 depends on PSTORE
102 help
103 When the option is enabled, pstore will log all kernel
104 messages, even if no oops or panic happened.
105
Mark Salyzyn9d5438f2015-01-16 16:01:10 -0800106config PSTORE_PMSG
107 bool "Log user space messages"
108 depends on PSTORE
109 help
110 When the option is enabled, pstore will export a character
111 interface /dev/pmsg0 to log user space messages. On reboot
112 data can be retrieved from /sys/fs/pstore/pmsg-ramoops-[ID].
113
114 If unsure, say N.
115
Anton Vorontsov060287b2012-07-09 17:10:41 -0700116config PSTORE_FTRACE
117 bool "Persistent function tracer"
118 depends on PSTORE
119 depends on FUNCTION_TRACER
Anton Vorontsov65f8c952012-07-17 14:26:15 -0700120 depends on DEBUG_FS
Anton Vorontsov060287b2012-07-09 17:10:41 -0700121 help
122 With this option kernel traces function calls into a persistent
123 ram buffer that can be decoded and dumped after reboot through
124 pstore filesystem. It can be used to determine what function
125 was last called before a reset or panic.
126
127 If unsure, say N.
128
Anton Vorontsov1894a252012-05-16 05:43:08 -0700129config PSTORE_RAM
130 tristate "Log panic/oops to a RAM buffer"
Anton Vorontsov1894a252012-05-16 05:43:08 -0700131 depends on PSTORE
Anton Vorontsovcddb8752012-05-17 00:15:08 -0700132 depends on HAS_IOMEM
133 depends on HAVE_MEMBLOCK
134 select REED_SOLOMON
135 select REED_SOLOMON_ENC8
136 select REED_SOLOMON_DEC8
Anton Vorontsov1894a252012-05-16 05:43:08 -0700137 help
138 This enables panic and oops messages to be logged to a circular
139 buffer in RAM where it can be read back at some later point.
140
141 Note that for historical reasons, the module will be named
142 "ramoops.ko".
143
Mauro Carvalho Chehab8c27ceff32016-10-18 10:12:27 -0200144 For more information, see Documentation/admin-guide/ramoops.rst.