123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265 |
- # SPDX-License-Identifier: GPL-2.0-only
- 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
- 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
- depends on BROKEN
- 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.
|