Commit 26fecbf7 authored by Vasile-Laurentiu Stanimir's avatar Vasile-Laurentiu Stanimir Committed by Kees Cook
Browse files

pstore: Move kmsg_bytes default into Kconfig



While kmsg_bytes can be set for pstore via mount, if a crash occurs
before the mount only partial console log will be stored as kmsg_bytes
defaults to a potentially different hardcoded value in the kernel
(PSTORE_DEFAULT_KMSG_BYTES). This makes it impossible to analyze valuable
post-mortem data especially on the embedded development or in the process
of bringing up new boards. Change this value to be a Kconfig option
with the default of old PSTORE_DEFAULT_KMSG_BYTES

Signed-off-by: default avatarVasile-Laurentiu Stanimir <vasile-laurentiu.stanimir@windriver.com>
Signed-off-by: default avatarKees Cook <keescook@chromium.org>
parent b6f8ed33
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -14,6 +14,14 @@ config PSTORE
	   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_DEFLATE_COMPRESS
	tristate "DEFLATE (ZLIB) compression"
	default y
+1 −1
Original line number Diff line number Diff line
@@ -266,7 +266,7 @@ static void parse_options(char *options)
 */
static int pstore_show_options(struct seq_file *m, struct dentry *root)
{
	if (kmsg_bytes != PSTORE_DEFAULT_KMSG_BYTES)
	if (kmsg_bytes != CONFIG_PSTORE_DEFAULT_KMSG_BYTES)
		seq_printf(m, ",kmsg_bytes=%lu", kmsg_bytes);
	return 0;
}
+0 −1
Original line number Diff line number Diff line
@@ -6,7 +6,6 @@
#include <linux/time.h>
#include <linux/pstore.h>

#define PSTORE_DEFAULT_KMSG_BYTES 10240
extern unsigned long kmsg_bytes;

#ifdef CONFIG_PSTORE_FTRACE
+1 −1
Original line number Diff line number Diff line
@@ -101,7 +101,7 @@ static char *big_oops_buf;
static size_t big_oops_buf_sz;

/* How much of the console log to snapshot */
unsigned long kmsg_bytes = PSTORE_DEFAULT_KMSG_BYTES;
unsigned long kmsg_bytes = CONFIG_PSTORE_DEFAULT_KMSG_BYTES;

void pstore_set_kmsg_bytes(int bytes)
{