192 lines
		
	
	
		
			6.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			192 lines
		
	
	
		
			6.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 
								 | 
							
								# SPDX-License-Identifier: GPL-2.0-only
							 | 
						||
| 
								 | 
							
								config PSTORE
							 | 
						||
| 
								 | 
							
									tristate "Persistent store support"
							 | 
						||
| 
								 | 
							
									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_DEFAULT_KMSG_BYTES
							 | 
						||
| 
								 | 
							
									int "Default kernel log storage space" if EXPERT
							 | 
						||
| 
								 | 
							
									depends on PSTORE
							 | 
						||
| 
								 | 
							
									default "10240"
							 | 
						||
| 
								 | 
							
									help
							 | 
						||
| 
								 | 
							
									  Defines default size of pstore kernel log storage.
							 | 
						||
| 
								 | 
							
									  Can be enlarged if needed, not recommended to shrink it.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								config PSTORE_COMPRESS
							 | 
						||
| 
								 | 
							
									bool "Pstore compression (deflate)"
							 | 
						||
| 
								 | 
							
									depends on PSTORE
							 | 
						||
| 
								 | 
							
									select ZLIB_INFLATE
							 | 
						||
| 
								 | 
							
									select ZLIB_DEFLATE
							 | 
						||
| 
								 | 
							
									default y
							 | 
						||
| 
								 | 
							
									help
							 | 
						||
| 
								 | 
							
									  Whether pstore records should be compressed before being written to
							 | 
						||
| 
								 | 
							
									  the backing store. This is implemented using the zlib 'deflate'
							 | 
						||
| 
								 | 
							
									  algorithm, using the library implementation instead of using the full
							 | 
						||
| 
								 | 
							
									  blown crypto API. This reduces the risk of secondary oopses or other
							 | 
						||
| 
								 | 
							
									  problems while pstore is recording panic metadata.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								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
							 | 
						||
| 
								 | 
							
									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.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								config PSTORE_ZONE
							 | 
						||
| 
								 | 
							
									tristate
							 | 
						||
| 
								 | 
							
									depends on PSTORE
							 | 
						||
| 
								 | 
							
									help
							 | 
						||
| 
								 | 
							
									  The common layer for pstore/blk (and pstore/ram in the future)
							 | 
						||
| 
								 | 
							
									  to manage storage in zones.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								config PSTORE_BLK
							 | 
						||
| 
								 | 
							
									tristate "Log panic/oops to a block device"
							 | 
						||
| 
								 | 
							
									depends on PSTORE
							 | 
						||
| 
								 | 
							
									depends on BLOCK
							 | 
						||
| 
								 | 
							
									select PSTORE_ZONE
							 | 
						||
| 
								 | 
							
									default n
							 | 
						||
| 
								 | 
							
									help
							 | 
						||
| 
								 | 
							
									  This enables panic and oops message to be logged to a block dev
							 | 
						||
| 
								 | 
							
									  where it can be read back at some later point.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									  For more information, see Documentation/admin-guide/pstore-blk.rst
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									  If unsure, say N.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								config PSTORE_BLK_BLKDEV
							 | 
						||
| 
								 | 
							
									string "block device identifier"
							 | 
						||
| 
								 | 
							
									depends on PSTORE_BLK
							 | 
						||
| 
								 | 
							
									default ""
							 | 
						||
| 
								 | 
							
									help
							 | 
						||
| 
								 | 
							
									  Which block device should be used for pstore/blk.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									  It accepts the following variants:
							 | 
						||
| 
								 | 
							
									  1) <hex_major><hex_minor> device number in hexadecimal representation,
							 | 
						||
| 
								 | 
							
									     with no leading 0x, for example b302.
							 | 
						||
| 
								 | 
							
									  2) /dev/<disk_name> represents the device name of disk
							 | 
						||
| 
								 | 
							
									  3) /dev/<disk_name><decimal> represents the device name and number
							 | 
						||
| 
								 | 
							
									     of partition - device number of disk plus the partition number
							 | 
						||
| 
								 | 
							
									  4) /dev/<disk_name>p<decimal> - same as the above, this form is
							 | 
						||
| 
								 | 
							
									     used when disk name of partitioned disk ends with a digit.
							 | 
						||
| 
								 | 
							
									  5) PARTUUID=00112233-4455-6677-8899-AABBCCDDEEFF representing the
							 | 
						||
| 
								 | 
							
									     unique id of a partition if the partition table provides it.
							 | 
						||
| 
								 | 
							
									     The UUID may be either an EFI/GPT UUID, or refer to an MSDOS
							 | 
						||
| 
								 | 
							
									     partition using the format SSSSSSSS-PP, where SSSSSSSS is a zero-
							 | 
						||
| 
								 | 
							
									     filled hex representation of the 32-bit "NT disk signature", and PP
							 | 
						||
| 
								 | 
							
									     is a zero-filled hex representation of the 1-based partition number.
							 | 
						||
| 
								 | 
							
									  6) PARTUUID=<UUID>/PARTNROFF=<int> to select a partition in relation
							 | 
						||
| 
								 | 
							
									     to a partition with a known unique id.
							 | 
						||
| 
								 | 
							
									  7) <major>:<minor> major and minor number of the device separated by
							 | 
						||
| 
								 | 
							
									     a colon.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									  NOTE that, both Kconfig and module parameters can configure
							 | 
						||
| 
								 | 
							
									  pstore/blk, but module parameters have priority over Kconfig.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								config PSTORE_BLK_KMSG_SIZE
							 | 
						||
| 
								 | 
							
									int "Size in Kbytes of kmsg dump log to store"
							 | 
						||
| 
								 | 
							
									depends on PSTORE_BLK
							 | 
						||
| 
								 | 
							
									default 64
							 | 
						||
| 
								 | 
							
									help
							 | 
						||
| 
								 | 
							
									  This just sets size of kmsg dump (oops, panic, etc) log for
							 | 
						||
| 
								 | 
							
									  pstore/blk. The size is in KB and must be a multiple of 4.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									  NOTE that, both Kconfig and module parameters can configure
							 | 
						||
| 
								 | 
							
									  pstore/blk, but module parameters have priority over Kconfig.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								config PSTORE_BLK_MAX_REASON
							 | 
						||
| 
								 | 
							
									int "Maximum kmsg dump reason to store"
							 | 
						||
| 
								 | 
							
									depends on PSTORE_BLK
							 | 
						||
| 
								 | 
							
									default 2
							 | 
						||
| 
								 | 
							
									help
							 | 
						||
| 
								 | 
							
									  The maximum reason for kmsg dumps to store. The default is
							 | 
						||
| 
								 | 
							
									  2 (KMSG_DUMP_OOPS), see include/linux/kmsg_dump.h's
							 | 
						||
| 
								 | 
							
									  enum kmsg_dump_reason for more details.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									  NOTE that, both Kconfig and module parameters can configure
							 | 
						||
| 
								 | 
							
									  pstore/blk, but module parameters have priority over Kconfig.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								config PSTORE_BLK_PMSG_SIZE
							 | 
						||
| 
								 | 
							
									int "Size in Kbytes of pmsg to store"
							 | 
						||
| 
								 | 
							
									depends on PSTORE_BLK
							 | 
						||
| 
								 | 
							
									depends on PSTORE_PMSG
							 | 
						||
| 
								 | 
							
									default 64
							 | 
						||
| 
								 | 
							
									help
							 | 
						||
| 
								 | 
							
									  This just sets size of pmsg (pmsg_size) for pstore/blk. The size is
							 | 
						||
| 
								 | 
							
									  in KB and must be a multiple of 4.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									  NOTE that, both Kconfig and module parameters can configure
							 | 
						||
| 
								 | 
							
									  pstore/blk, but module parameters have priority over Kconfig.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								config PSTORE_BLK_CONSOLE_SIZE
							 | 
						||
| 
								 | 
							
									int "Size in Kbytes of console log to store"
							 | 
						||
| 
								 | 
							
									depends on PSTORE_BLK
							 | 
						||
| 
								 | 
							
									depends on PSTORE_CONSOLE
							 | 
						||
| 
								 | 
							
									default 64
							 | 
						||
| 
								 | 
							
									help
							 | 
						||
| 
								 | 
							
									  This just sets size of console log (console_size) to store via
							 | 
						||
| 
								 | 
							
									  pstore/blk. The size is in KB and must be a multiple of 4.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									  NOTE that, both Kconfig and module parameters can configure
							 | 
						||
| 
								 | 
							
									  pstore/blk, but module parameters have priority over Kconfig.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								config PSTORE_BLK_FTRACE_SIZE
							 | 
						||
| 
								 | 
							
									int "Size in Kbytes of ftrace log to store"
							 | 
						||
| 
								 | 
							
									depends on PSTORE_BLK
							 | 
						||
| 
								 | 
							
									depends on PSTORE_FTRACE
							 | 
						||
| 
								 | 
							
									default 64
							 | 
						||
| 
								 | 
							
									help
							 | 
						||
| 
								 | 
							
									  This just sets size of ftrace log (ftrace_size) for pstore/blk. The
							 | 
						||
| 
								 | 
							
									  size is in KB and must be a multiple of 4.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									  NOTE that, both Kconfig and module parameters can configure
							 | 
						||
| 
								 | 
							
									  pstore/blk, but module parameters have priority over Kconfig.
							 |