Linux Audio

Check our new training course

Loading...
v5.4
  1# SPDX-License-Identifier: GPL-2.0-only
  2config PSTORE
  3	tristate "Persistent store support"
  4	select CRYPTO if PSTORE_COMPRESS
  5	default n
  6	help
  7	   This option enables generic access to platform level
  8	   persistent storage via "pstore" filesystem that can
  9	   be mounted as /dev/pstore.  Only useful if you have
 10	   a platform level driver that registers with pstore to
 11	   provide the data, so you probably should just go say "Y"
 12	   (or "M") to a platform specific persistent store driver
 13	   (e.g. ACPI_APEI on X86) which will select this for you.
 14	   If you don't have a platform persistent store driver,
 15	   say N.
 16
 17config PSTORE_DEFLATE_COMPRESS
 18	tristate "DEFLATE (ZLIB) compression"
 19	default y
 20	depends on PSTORE
 21	select CRYPTO_DEFLATE
 22	help
 23	  This option enables DEFLATE (also known as ZLIB) compression
 24	  algorithm support.
 25
 26config PSTORE_LZO_COMPRESS
 27	tristate "LZO compression"
 28	depends on PSTORE
 29	select CRYPTO_LZO
 30	help
 31	  This option enables LZO compression algorithm support.
 32
 33config PSTORE_LZ4_COMPRESS
 34	tristate "LZ4 compression"
 35	depends on PSTORE
 36	select CRYPTO_LZ4
 37	help
 38	  This option enables LZ4 compression algorithm support.
 39
 40config PSTORE_LZ4HC_COMPRESS
 41	tristate "LZ4HC compression"
 42	depends on PSTORE
 43	select CRYPTO_LZ4HC
 44	help
 45	  This option enables LZ4HC (high compression) mode algorithm.
 46
 47config PSTORE_842_COMPRESS
 48	bool "842 compression"
 49	depends on PSTORE
 50	select CRYPTO_842
 51	help
 52	  This option enables 842 compression algorithm support.
 53
 54config PSTORE_ZSTD_COMPRESS
 55	bool "zstd compression"
 56	depends on PSTORE
 57	select CRYPTO_ZSTD
 58	help
 59	  This option enables zstd compression algorithm support.
 60
 61config PSTORE_COMPRESS
 62	def_bool y
 63	depends on PSTORE
 64	depends on PSTORE_DEFLATE_COMPRESS || PSTORE_LZO_COMPRESS ||	\
 65		   PSTORE_LZ4_COMPRESS || PSTORE_LZ4HC_COMPRESS ||	\
 66		   PSTORE_842_COMPRESS || PSTORE_ZSTD_COMPRESS
 67
 68choice
 69	prompt "Default pstore compression algorithm"
 70	depends on PSTORE_COMPRESS
 71	help
 72	  This option chooses the default active compression algorithm.
 73	  This change be changed at boot with "pstore.compress=..." on
 74	  the kernel command line.
 75
 76	  Currently, pstore has support for 6 compression algorithms:
 77	  deflate, lzo, lz4, lz4hc, 842 and zstd.
 78
 79	  The default compression algorithm is deflate.
 80
 81	config PSTORE_DEFLATE_COMPRESS_DEFAULT
 82		bool "deflate" if PSTORE_DEFLATE_COMPRESS
 83
 84	config PSTORE_LZO_COMPRESS_DEFAULT
 85		bool "lzo" if PSTORE_LZO_COMPRESS
 86
 87	config PSTORE_LZ4_COMPRESS_DEFAULT
 88		bool "lz4" if PSTORE_LZ4_COMPRESS
 89
 90	config PSTORE_LZ4HC_COMPRESS_DEFAULT
 91		bool "lz4hc" if PSTORE_LZ4HC_COMPRESS
 92
 93	config PSTORE_842_COMPRESS_DEFAULT
 94		bool "842" if PSTORE_842_COMPRESS
 95
 96	config PSTORE_ZSTD_COMPRESS_DEFAULT
 97		bool "zstd" if PSTORE_ZSTD_COMPRESS
 98
 99endchoice
100
101config PSTORE_COMPRESS_DEFAULT
102	string
103	depends on PSTORE_COMPRESS
104	default "deflate" if PSTORE_DEFLATE_COMPRESS_DEFAULT
105	default "lzo" if PSTORE_LZO_COMPRESS_DEFAULT
106	default "lz4" if PSTORE_LZ4_COMPRESS_DEFAULT
107	default "lz4hc" if PSTORE_LZ4HC_COMPRESS_DEFAULT
108	default "842" if PSTORE_842_COMPRESS_DEFAULT
109	default "zstd" if PSTORE_ZSTD_COMPRESS_DEFAULT
110
111config PSTORE_CONSOLE
112	bool "Log kernel console messages"
113	depends on PSTORE
114	help
115	  When the option is enabled, pstore will log all kernel
116	  messages, even if no oops or panic happened.
117
118config PSTORE_PMSG
119	bool "Log user space messages"
120	depends on PSTORE
 
121	help
122	  When the option is enabled, pstore will export a character
123	  interface /dev/pmsg0 to log user space messages. On reboot
124	  data can be retrieved from /sys/fs/pstore/pmsg-ramoops-[ID].
125
126	  If unsure, say N.
127
128config PSTORE_FTRACE
129	bool "Persistent function tracer"
130	depends on PSTORE
131	depends on FUNCTION_TRACER
132	depends on DEBUG_FS
133	help
134	  With this option kernel traces function calls into a persistent
135	  ram buffer that can be decoded and dumped after reboot through
136	  pstore filesystem. It can be used to determine what function
137	  was last called before a reset or panic.
138
139	  If unsure, say N.
140
141config PSTORE_RAM
142	tristate "Log panic/oops to a RAM buffer"
143	depends on PSTORE
144	depends on HAS_IOMEM
145	select REED_SOLOMON
146	select REED_SOLOMON_ENC8
147	select REED_SOLOMON_DEC8
148	help
149	  This enables panic and oops messages to be logged to a circular
150	  buffer in RAM where it can be read back at some later point.
151
152	  Note that for historical reasons, the module will be named
153	  "ramoops.ko".
154
155	  For more information, see Documentation/admin-guide/ramoops.rst.
v6.9.4
  1# SPDX-License-Identifier: GPL-2.0-only
  2config PSTORE
  3	tristate "Persistent store support"
 
  4	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.
 15
 16config PSTORE_DEFAULT_KMSG_BYTES
 17	int "Default kernel log storage space" if EXPERT
 
 
 
 
 
 
 
 
 
 18	depends on PSTORE
 19	default "10240"
 20	help
 21	  Defines default size of pstore kernel log storage.
 22	  Can be enlarged if needed, not recommended to shrink it.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 23
 24config PSTORE_COMPRESS
 25	bool "Pstore compression (deflate)"
 26	depends on PSTORE
 27	select ZLIB_INFLATE
 28	select ZLIB_DEFLATE
 29	default y
 
 
 
 
 30	help
 31	  Whether pstore records should be compressed before being written to
 32	  the backing store. This is implemented using the zlib 'deflate'
 33	  algorithm, using the library implementation instead of using the full
 34	  blown crypto API. This reduces the risk of secondary oopses or other
 35	  problems while pstore is recording panic metadata.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 36
 37config PSTORE_CONSOLE
 38	bool "Log kernel console messages"
 39	depends on PSTORE
 40	help
 41	  When the option is enabled, pstore will log all kernel
 42	  messages, even if no oops or panic happened.
 43
 44config PSTORE_PMSG
 45	bool "Log user space messages"
 46	depends on PSTORE
 47	select RT_MUTEXES
 48	help
 49	  When the option is enabled, pstore will export a character
 50	  interface /dev/pmsg0 to log user space messages. On reboot
 51	  data can be retrieved from /sys/fs/pstore/pmsg-ramoops-[ID].
 52
 53	  If unsure, say N.
 54
 55config PSTORE_FTRACE
 56	bool "Persistent function tracer"
 57	depends on PSTORE
 58	depends on FUNCTION_TRACER
 59	depends on DEBUG_FS
 60	help
 61	  With this option kernel traces function calls into a persistent
 62	  ram buffer that can be decoded and dumped after reboot through
 63	  pstore filesystem. It can be used to determine what function
 64	  was last called before a reset or panic.
 65
 66	  If unsure, say N.
 67
 68config PSTORE_RAM
 69	tristate "Log panic/oops to a RAM buffer"
 70	depends on PSTORE
 71	depends on HAS_IOMEM
 72	select REED_SOLOMON
 73	select REED_SOLOMON_ENC8
 74	select REED_SOLOMON_DEC8
 75	help
 76	  This enables panic and oops messages to be logged to a circular
 77	  buffer in RAM where it can be read back at some later point.
 78
 79	  Note that for historical reasons, the module will be named
 80	  "ramoops.ko".
 81
 82	  For more information, see Documentation/admin-guide/ramoops.rst.
 83
 84config PSTORE_ZONE
 85	tristate
 86	depends on PSTORE
 87	help
 88	  The common layer for pstore/blk (and pstore/ram in the future)
 89	  to manage storage in zones.
 90
 91config PSTORE_BLK
 92	tristate "Log panic/oops to a block device"
 93	depends on PSTORE
 94	depends on BLOCK
 95	select PSTORE_ZONE
 96	default n
 97	help
 98	  This enables panic and oops message to be logged to a block dev
 99	  where it can be read back at some later point.
100
101	  For more information, see Documentation/admin-guide/pstore-blk.rst
102
103	  If unsure, say N.
104
105config PSTORE_BLK_BLKDEV
106	string "block device identifier"
107	depends on PSTORE_BLK
108	default ""
109	help
110	  Which block device should be used for pstore/blk.
111
112	  It accepts the following variants:
113	  1) <hex_major><hex_minor> device number in hexadecimal representation,
114	     with no leading 0x, for example b302.
115	  2) /dev/<disk_name> represents the device name of disk
116	  3) /dev/<disk_name><decimal> represents the device name and number
117	     of partition - device number of disk plus the partition number
118	  4) /dev/<disk_name>p<decimal> - same as the above, this form is
119	     used when disk name of partitioned disk ends with a digit.
120	  5) PARTUUID=00112233-4455-6677-8899-AABBCCDDEEFF representing the
121	     unique id of a partition if the partition table provides it.
122	     The UUID may be either an EFI/GPT UUID, or refer to an MSDOS
123	     partition using the format SSSSSSSS-PP, where SSSSSSSS is a zero-
124	     filled hex representation of the 32-bit "NT disk signature", and PP
125	     is a zero-filled hex representation of the 1-based partition number.
126	  6) PARTUUID=<UUID>/PARTNROFF=<int> to select a partition in relation
127	     to a partition with a known unique id.
128	  7) <major>:<minor> major and minor number of the device separated by
129	     a colon.
130
131	  NOTE that, both Kconfig and module parameters can configure
132	  pstore/blk, but module parameters have priority over Kconfig.
133
134config PSTORE_BLK_KMSG_SIZE
135	int "Size in Kbytes of kmsg dump log to store"
136	depends on PSTORE_BLK
137	default 64
138	help
139	  This just sets size of kmsg dump (oops, panic, etc) log for
140	  pstore/blk. The size is in KB and must be a multiple of 4.
141
142	  NOTE that, both Kconfig and module parameters can configure
143	  pstore/blk, but module parameters have priority over Kconfig.
144
145config PSTORE_BLK_MAX_REASON
146	int "Maximum kmsg dump reason to store"
147	depends on PSTORE_BLK
148	default 2
149	help
150	  The maximum reason for kmsg dumps to store. The default is
151	  2 (KMSG_DUMP_OOPS), see include/linux/kmsg_dump.h's
152	  enum kmsg_dump_reason for more details.
153
154	  NOTE that, both Kconfig and module parameters can configure
155	  pstore/blk, but module parameters have priority over Kconfig.
156
157config PSTORE_BLK_PMSG_SIZE
158	int "Size in Kbytes of pmsg to store"
159	depends on PSTORE_BLK
160	depends on PSTORE_PMSG
161	default 64
162	help
163	  This just sets size of pmsg (pmsg_size) for pstore/blk. The size is
164	  in KB and must be a multiple of 4.
165
166	  NOTE that, both Kconfig and module parameters can configure
167	  pstore/blk, but module parameters have priority over Kconfig.
168
169config PSTORE_BLK_CONSOLE_SIZE
170	int "Size in Kbytes of console log to store"
171	depends on PSTORE_BLK
172	depends on PSTORE_CONSOLE
173	default 64
174	help
175	  This just sets size of console log (console_size) to store via
176	  pstore/blk. The size is in KB and must be a multiple of 4.
177
178	  NOTE that, both Kconfig and module parameters can configure
179	  pstore/blk, but module parameters have priority over Kconfig.
180
181config PSTORE_BLK_FTRACE_SIZE
182	int "Size in Kbytes of ftrace log to store"
183	depends on PSTORE_BLK
184	depends on PSTORE_FTRACE
185	default 64
186	help
187	  This just sets size of ftrace log (ftrace_size) for pstore/blk. The
188	  size is in KB and must be a multiple of 4.
189
190	  NOTE that, both Kconfig and module parameters can configure
191	  pstore/blk, but module parameters have priority over Kconfig.