1config PSTORE 2 tristate "Persistent store support" 3 select CRYPTO if PSTORE_COMPRESS 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_DEFLATE_COMPRESS 17 tristate "DEFLATE (ZLIB) compression" 18 default y 19 depends on PSTORE 20 select CRYPTO_DEFLATE 21 help 22 This option enables DEFLATE (also known as ZLIB) compression 23 algorithm support. 24 25config PSTORE_LZO_COMPRESS 26 tristate "LZO compression" 27 depends on PSTORE 28 select CRYPTO_LZO 29 help 30 This option enables LZO compression algorithm support. 31 32config PSTORE_LZ4_COMPRESS 33 tristate "LZ4 compression" 34 depends on PSTORE 35 select CRYPTO_LZ4 36 help 37 This option enables LZ4 compression algorithm support. 38 39config PSTORE_LZ4HC_COMPRESS 40 tristate "LZ4HC compression" 41 depends on PSTORE 42 select CRYPTO_LZ4HC 43 help 44 This option enables LZ4HC (high compression) mode algorithm. 45 46config PSTORE_842_COMPRESS 47 bool "842 compression" 48 depends on PSTORE 49 select CRYPTO_842 50 help 51 This option enables 842 compression algorithm support. 52 53config PSTORE_COMPRESS 54 def_bool y 55 depends on PSTORE 56 depends on PSTORE_DEFLATE_COMPRESS || PSTORE_LZO_COMPRESS || \ 57 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: 69 deflate, lzo, lz4, lz4hc and 842. 70 71 The default compression algorithm is deflate. 72 73 config PSTORE_DEFLATE_COMPRESS_DEFAULT 74 bool "deflate" if PSTORE_DEFLATE_COMPRESS 75 76 config PSTORE_LZO_COMPRESS_DEFAULT 77 bool "lzo" if PSTORE_LZO_COMPRESS 78 79 config PSTORE_LZ4_COMPRESS_DEFAULT 80 bool "lz4" if PSTORE_LZ4_COMPRESS 81 82 config PSTORE_LZ4HC_COMPRESS_DEFAULT 83 bool "lz4hc" if PSTORE_LZ4HC_COMPRESS 84 85 config PSTORE_842_COMPRESS_DEFAULT 86 bool "842" if PSTORE_842_COMPRESS 87 88endchoice 89 90config PSTORE_COMPRESS_DEFAULT 91 string 92 depends on PSTORE_COMPRESS 93 default "deflate" if PSTORE_DEFLATE_COMPRESS_DEFAULT 94 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 99config 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 106config 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 116config PSTORE_FTRACE 117 bool "Persistent function tracer" 118 depends on PSTORE 119 depends on FUNCTION_TRACER 120 depends on DEBUG_FS 121 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 129config PSTORE_RAM 130 tristate "Log panic/oops to a RAM buffer" 131 depends on PSTORE 132 depends on HAS_IOMEM 133 depends on HAVE_MEMBLOCK 134 select REED_SOLOMON 135 select REED_SOLOMON_ENC8 136 select REED_SOLOMON_DEC8 137 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 144 For more information, see Documentation/admin-guide/ramoops.rst. 145