Tony Luck | ca01d6d | 2010-12-28 14:25:21 -0800 | [diff] [blame] | 1 | config PSTORE |
Geliang Tang | ee1d267 | 2015-10-20 00:39:03 -0700 | [diff] [blame] | 2 | tristate "Persistent store support" |
Arnd Bergmann | 58eb5b67 | 2018-03-15 16:34:08 +0100 | [diff] [blame] | 3 | select CRYPTO if PSTORE_COMPRESS |
Tony Luck | ca01d6d | 2010-12-28 14:25:21 -0800 | [diff] [blame] | 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. |
Anton Vorontsov | 1894a25 | 2012-05-16 05:43:08 -0700 | [diff] [blame] | 15 | |
Geliang Tang | cb3bee0 | 2018-03-09 18:51:07 +0800 | [diff] [blame] | 16 | config PSTORE_DEFLATE_COMPRESS |
Arnd Bergmann | 58eb5b67 | 2018-03-15 16:34:08 +0100 | [diff] [blame] | 17 | tristate "DEFLATE (ZLIB) compression" |
Kees Cook | fe1d475 | 2018-03-06 15:57:38 -0800 | [diff] [blame] | 18 | default y |
| 19 | depends on PSTORE |
Geliang Tang | cb3bee0 | 2018-03-09 18:51:07 +0800 | [diff] [blame] | 20 | select CRYPTO_DEFLATE |
Kees Cook | fe1d475 | 2018-03-06 15:57:38 -0800 | [diff] [blame] | 21 | help |
Geliang Tang | cb3bee0 | 2018-03-09 18:51:07 +0800 | [diff] [blame] | 22 | This option enables DEFLATE (also known as ZLIB) compression |
| 23 | algorithm support. |
Geliang Tang | 8cfc8dd | 2016-02-18 22:04:22 +0800 | [diff] [blame] | 24 | |
| 25 | config PSTORE_LZO_COMPRESS |
Arnd Bergmann | 58eb5b67 | 2018-03-15 16:34:08 +0100 | [diff] [blame] | 26 | tristate "LZO compression" |
Kees Cook | fe1d475 | 2018-03-06 15:57:38 -0800 | [diff] [blame] | 27 | depends on PSTORE |
Geliang Tang | cb3bee0 | 2018-03-09 18:51:07 +0800 | [diff] [blame] | 28 | select CRYPTO_LZO |
Kees Cook | fe1d475 | 2018-03-06 15:57:38 -0800 | [diff] [blame] | 29 | help |
| 30 | This option enables LZO compression algorithm support. |
Geliang Tang | 8cfc8dd | 2016-02-18 22:04:22 +0800 | [diff] [blame] | 31 | |
| 32 | config PSTORE_LZ4_COMPRESS |
Arnd Bergmann | 58eb5b67 | 2018-03-15 16:34:08 +0100 | [diff] [blame] | 33 | tristate "LZ4 compression" |
Kees Cook | fe1d475 | 2018-03-06 15:57:38 -0800 | [diff] [blame] | 34 | depends on PSTORE |
Geliang Tang | cb3bee0 | 2018-03-09 18:51:07 +0800 | [diff] [blame] | 35 | select CRYPTO_LZ4 |
Kees Cook | fe1d475 | 2018-03-06 15:57:38 -0800 | [diff] [blame] | 36 | help |
| 37 | This option enables LZ4 compression algorithm support. |
Geliang Tang | 239b716 | 2018-02-13 14:40:39 +0800 | [diff] [blame] | 38 | |
| 39 | config PSTORE_LZ4HC_COMPRESS |
Arnd Bergmann | 58eb5b67 | 2018-03-15 16:34:08 +0100 | [diff] [blame] | 40 | tristate "LZ4HC compression" |
Kees Cook | fe1d475 | 2018-03-06 15:57:38 -0800 | [diff] [blame] | 41 | depends on PSTORE |
Geliang Tang | cb3bee0 | 2018-03-09 18:51:07 +0800 | [diff] [blame] | 42 | select CRYPTO_LZ4HC |
Geliang Tang | 239b716 | 2018-02-13 14:40:39 +0800 | [diff] [blame] | 43 | help |
| 44 | This option enables LZ4HC (high compression) mode algorithm. |
| 45 | |
| 46 | config PSTORE_842_COMPRESS |
Kees Cook | fe1d475 | 2018-03-06 15:57:38 -0800 | [diff] [blame] | 47 | bool "842 compression" |
| 48 | depends on PSTORE |
Geliang Tang | cb3bee0 | 2018-03-09 18:51:07 +0800 | [diff] [blame] | 49 | select CRYPTO_842 |
Geliang Tang | 239b716 | 2018-02-13 14:40:39 +0800 | [diff] [blame] | 50 | help |
| 51 | This option enables 842 compression algorithm support. |
| 52 | |
Kees Cook | fe1d475 | 2018-03-06 15:57:38 -0800 | [diff] [blame] | 53 | config PSTORE_COMPRESS |
| 54 | def_bool y |
| 55 | depends on PSTORE |
Geliang Tang | cb3bee0 | 2018-03-09 18:51:07 +0800 | [diff] [blame] | 56 | depends on PSTORE_DEFLATE_COMPRESS || PSTORE_LZO_COMPRESS || \ |
Kees Cook | fe1d475 | 2018-03-06 15:57:38 -0800 | [diff] [blame] | 57 | PSTORE_LZ4_COMPRESS || PSTORE_LZ4HC_COMPRESS || \ |
| 58 | PSTORE_842_COMPRESS |
| 59 | |
| 60 | choice |
| 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: |
Geliang Tang | cb3bee0 | 2018-03-09 18:51:07 +0800 | [diff] [blame] | 69 | deflate, lzo, lz4, lz4hc and 842. |
Kees Cook | fe1d475 | 2018-03-06 15:57:38 -0800 | [diff] [blame] | 70 | |
Geliang Tang | cb3bee0 | 2018-03-09 18:51:07 +0800 | [diff] [blame] | 71 | The default compression algorithm is deflate. |
Kees Cook | fe1d475 | 2018-03-06 15:57:38 -0800 | [diff] [blame] | 72 | |
Geliang Tang | cb3bee0 | 2018-03-09 18:51:07 +0800 | [diff] [blame] | 73 | config PSTORE_DEFLATE_COMPRESS_DEFAULT |
Arnd Bergmann | 58eb5b67 | 2018-03-15 16:34:08 +0100 | [diff] [blame] | 74 | bool "deflate" if PSTORE_DEFLATE_COMPRESS |
Kees Cook | fe1d475 | 2018-03-06 15:57:38 -0800 | [diff] [blame] | 75 | |
| 76 | config PSTORE_LZO_COMPRESS_DEFAULT |
Arnd Bergmann | 58eb5b67 | 2018-03-15 16:34:08 +0100 | [diff] [blame] | 77 | bool "lzo" if PSTORE_LZO_COMPRESS |
Kees Cook | fe1d475 | 2018-03-06 15:57:38 -0800 | [diff] [blame] | 78 | |
| 79 | config PSTORE_LZ4_COMPRESS_DEFAULT |
Arnd Bergmann | 58eb5b67 | 2018-03-15 16:34:08 +0100 | [diff] [blame] | 80 | bool "lz4" if PSTORE_LZ4_COMPRESS |
Kees Cook | fe1d475 | 2018-03-06 15:57:38 -0800 | [diff] [blame] | 81 | |
| 82 | config PSTORE_LZ4HC_COMPRESS_DEFAULT |
Arnd Bergmann | 58eb5b67 | 2018-03-15 16:34:08 +0100 | [diff] [blame] | 83 | bool "lz4hc" if PSTORE_LZ4HC_COMPRESS |
Kees Cook | fe1d475 | 2018-03-06 15:57:38 -0800 | [diff] [blame] | 84 | |
| 85 | config PSTORE_842_COMPRESS_DEFAULT |
Arnd Bergmann | 58eb5b67 | 2018-03-15 16:34:08 +0100 | [diff] [blame] | 86 | bool "842" if PSTORE_842_COMPRESS |
Kees Cook | fe1d475 | 2018-03-06 15:57:38 -0800 | [diff] [blame] | 87 | |
Geliang Tang | 8cfc8dd | 2016-02-18 22:04:22 +0800 | [diff] [blame] | 88 | endchoice |
| 89 | |
Kees Cook | fe1d475 | 2018-03-06 15:57:38 -0800 | [diff] [blame] | 90 | config PSTORE_COMPRESS_DEFAULT |
| 91 | string |
| 92 | depends on PSTORE_COMPRESS |
Geliang Tang | cb3bee0 | 2018-03-09 18:51:07 +0800 | [diff] [blame] | 93 | default "deflate" if PSTORE_DEFLATE_COMPRESS_DEFAULT |
Kees Cook | fe1d475 | 2018-03-06 15:57:38 -0800 | [diff] [blame] | 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 | |
Anton Vorontsov | f29e595 | 2012-05-26 06:20:19 -0700 | [diff] [blame] | 99 | config 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 | |
Mark Salyzyn | 9d5438f | 2015-01-16 16:01:10 -0800 | [diff] [blame] | 106 | config 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 | |
Anton Vorontsov | 060287b | 2012-07-09 17:10:41 -0700 | [diff] [blame] | 116 | config PSTORE_FTRACE |
| 117 | bool "Persistent function tracer" |
| 118 | depends on PSTORE |
| 119 | depends on FUNCTION_TRACER |
Anton Vorontsov | 65f8c95 | 2012-07-17 14:26:15 -0700 | [diff] [blame] | 120 | depends on DEBUG_FS |
Anton Vorontsov | 060287b | 2012-07-09 17:10:41 -0700 | [diff] [blame] | 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 | |
Anton Vorontsov | 1894a25 | 2012-05-16 05:43:08 -0700 | [diff] [blame] | 129 | config PSTORE_RAM |
| 130 | tristate "Log panic/oops to a RAM buffer" |
Anton Vorontsov | 1894a25 | 2012-05-16 05:43:08 -0700 | [diff] [blame] | 131 | depends on PSTORE |
Anton Vorontsov | cddb875 | 2012-05-17 00:15:08 -0700 | [diff] [blame] | 132 | depends on HAS_IOMEM |
| 133 | depends on HAVE_MEMBLOCK |
| 134 | select REED_SOLOMON |
| 135 | select REED_SOLOMON_ENC8 |
| 136 | select REED_SOLOMON_DEC8 |
Anton Vorontsov | 1894a25 | 2012-05-16 05:43:08 -0700 | [diff] [blame] | 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 | |
Mauro Carvalho Chehab | 8c27ceff3 | 2016-10-18 10:12:27 -0200 | [diff] [blame] | 144 | For more information, see Documentation/admin-guide/ramoops.rst. |