Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0741f4d2 authored by Chuck Ebbert's avatar Chuck Ebbert Committed by Andi Kleen
Browse files

[PATCH] x86: add sysctl for kstack_depth_to_print



Add sysctl for kstack_depth_to_print. This lets users change
the amount of raw stack data printed in dump_stack() without
having to reboot.

Signed-off-by: default avatarChuck Ebbert <76306.1226@compuserve.com>
Signed-off-by: default avatarAndi Kleen <ak@suse.de>
parent c7a3392e
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -27,6 +27,7 @@ show up in /proc/sys/kernel:
- hotplug
- java-appletviewer           [ binfmt_java, obsolete ]
- java-interpreter            [ binfmt_java, obsolete ]
- kstack_depth_to_print       [ X86 only ]
- l2cr                        [ PPC only ]
- modprobe                    ==> Documentation/kmod.txt
- msgmax
@@ -170,6 +171,13 @@ This flag controls the L2 cache of G3 processor boards. If

==============================================================

kstack_depth_to_print: (X86 only)

Controls the number of words to print when dumping the raw
kernel stack.

==============================================================

osrelease, ostype & version:

# cat osrelease
+1 −1
Original line number Diff line number Diff line
@@ -91,7 +91,7 @@ asmlinkage void alignment_check(void);
asmlinkage void spurious_interrupt_bug(void);
asmlinkage void machine_check(void);

static int kstack_depth_to_print = 24;
int kstack_depth_to_print = 24;
#ifdef CONFIG_STACK_UNWIND
static int call_trace = 1;
#else
+1 −1
Original line number Diff line number Diff line
@@ -108,7 +108,7 @@ static inline void preempt_conditional_cli(struct pt_regs *regs)
	preempt_enable_no_resched();
}

static int kstack_depth_to_print = 12;
int kstack_depth_to_print = 12;
#ifdef CONFIG_STACK_UNWIND
static int call_trace = 1;
#else
+2 −0
Original line number Diff line number Diff line
#ifndef _ASM_STACKTRACE_H
#define _ASM_STACKTRACE_H 1

extern int kstack_depth_to_print;

/* Generic stack tracer with callbacks */

struct stacktrace_ops {
+9 −0
Original line number Diff line number Diff line
@@ -54,6 +54,7 @@ extern int proc_nr_files(ctl_table *table, int write, struct file *filp,

#ifdef CONFIG_X86
#include <asm/nmi.h>
#include <asm/stacktrace.h>
#endif

#if defined(CONFIG_SYSCTL)
@@ -707,6 +708,14 @@ static ctl_table kern_table[] = {
		.mode		= 0444,
		.proc_handler	= &proc_dointvec,
	},
	{
		.ctl_name	= CTL_UNNUMBERED,
		.procname	= "kstack_depth_to_print",
		.data		= &kstack_depth_to_print,
		.maxlen		= sizeof(int),
		.mode		= 0644,
		.proc_handler	= &proc_dointvec,
	},
#endif
#if defined(CONFIG_MMU)
	{