summaryrefslogtreecommitdiffstats
path: root/fs/pstore/Kconfig
blob: d5fb6d95d4d4097cf6b2af0dfdef3f677b4bccc5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
config PSTORE
	tristate "Persistent store support"
	select CRYPTO if PSTORE_COMPRESS
	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.

config PSTORE_DEFLATE_COMPRESS
	tristate "DEFLATE (ZLIB) compression"
	default y
	depends on PSTORE
	select CRYPTO_DEFLATE
	help
	  This option enables DEFLATE (also known as ZLIB) compression
	  algorithm support.

config PSTORE_LZO_COMPRESS
	tristate "LZO compression"
	depends on PSTORE
	select CRYPTO_LZO
	help
	  This option enables LZO compression algorithm support.

config PSTORE_LZ4_COMPRESS
	tristate "LZ4 compression"
	depends on PSTORE
	select CRYPTO_LZ4
	help
	  This option enables LZ4 compression algorithm support.

config PSTORE_LZ4HC_COMPRESS
	tristate "LZ4HC compression"
	depends on PSTORE
	select CRYPTO_LZ4HC
	help
	  This option enables LZ4HC (high compression) mode algorithm.

config PSTORE_842_COMPRESS
	bool "842 compression"
	depends on PSTORE
	select CRYPTO_842
	help
	  This option enables 842 compression algorithm support.

config PSTORE_ZSTD_COMPRESS
	bool "zstd compression"
	depends on PSTORE
	select CRYPTO_ZSTD
	help
	  This option enables zstd compression algorithm support.

config PSTORE_COMPRESS
	def_bool y
	depends on PSTORE
	depends on PSTORE_DEFLATE_COMPRESS || PSTORE_LZO_COMPRESS ||	\
		   PSTORE_LZ4_COMPRESS || PSTORE_LZ4HC_COMPRESS ||	\
		   PSTORE_842_COMPRESS || PSTORE_ZSTD_COMPRESS

choice
	prompt "Default pstore compression algorithm"
	depends on PSTORE_COMPRESS
	help
	  This option chooses the default active compression algorithm.
	  This change be changed at boot with "pstore.compress=..." on
	  the kernel command line.

	  Currently, pstore has support for 6 compression algorithms:
	  deflate, lzo, lz4, lz4hc, 842 and zstd.

	  The default compression algorithm is deflate.

	config PSTORE_DEFLATE_COMPRESS_DEFAULT
		bool "deflate" if PSTORE_DEFLATE_COMPRESS

	config PSTORE_LZO_COMPRESS_DEFAULT
		bool "lzo" if PSTORE_LZO_COMPRESS

	config PSTORE_LZ4_COMPRESS_DEFAULT
		bool "lz4" if PSTORE_LZ4_COMPRESS

	config PSTORE_LZ4HC_COMPRESS_DEFAULT
		bool "lz4hc" if PSTORE_LZ4HC_COMPRESS

	config PSTORE_842_COMPRESS_DEFAULT
		bool "842" if PSTORE_842_COMPRESS

	config PSTORE_ZSTD_COMPRESS_DEFAULT
		bool "zstd" if PSTORE_ZSTD_COMPRESS

endchoice

config PSTORE_COMPRESS_DEFAULT
	string
	depends on PSTORE_COMPRESS
	default "deflate" if PSTORE_DEFLATE_COMPRESS_DEFAULT
	default "lzo" if PSTORE_LZO_COMPRESS_DEFAULT
	default "lz4" if PSTORE_LZ4_COMPRESS_DEFAULT
	default "lz4hc" if PSTORE_LZ4HC_COMPRESS_DEFAULT
	default "842" if PSTORE_842_COMPRESS_DEFAULT
	default "zstd" if PSTORE_ZSTD_COMPRESS_DEFAULT

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.

config PSTORE_PMSG
	bool "Log user space messages"
	depends on PSTORE
	select RT_MUTEXES
	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.

config PSTORE_FTRACE
	bool "Persistent function tracer"
	depends on PSTORE
	depends on FUNCTION_TRACER
	depends on DEBUG_FS
	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.

config PSTORE_RAM
	tristate "Log panic/oops to a RAM buffer"
	depends on PSTORE
	depends on HAS_IOMEM
	depends on HAVE_MEMBLOCK
	select REED_SOLOMON
	select REED_SOLOMON_ENC8
	select REED_SOLOMON_DEC8
	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".

	  For more information, see Documentation/admin-guide/ramoops.rst.