linux_dsm_epyc7002/arch
Josh Poimboeuf fcd709ef20 x86/dumpstack: Add recursion checking for all stacks
in_exception_stack() has some recursion checking which makes sure the
stack trace code never traverses a given exception stack more than once.
This prevents an infinite loop if corruption somehow causes a stack's
"next stack" pointer to point to itself (directly or indirectly).

The recursion checking can be useful for other stacks in addition to the
exception stack, so extend it to work for all stacks.

Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com>
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Brian Gerst <brgerst@gmail.com>
Cc: Byungchul Park <byungchul.park@lge.com>
Cc: Denys Vlasenko <dvlasenk@redhat.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Kees Cook <keescook@chromium.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Nilay Vaish <nilayvaish@gmail.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/95de5db4cfe111754845a5cef04e20630d01423f.1473905218.git.jpoimboe@redhat.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2016-09-15 08:13:15 +02:00
..
alpha RTC for 4.8 2016-08-05 09:48:22 -04:00
arc dma-mapping: use unsigned long for dma_attrs 2016-08-04 08:50:07 -04:00
arm ftrace: Add return address pointer to ftrace_ret_stack 2016-08-24 12:15:14 +02:00
arm64 ftrace: Add return address pointer to ftrace_ret_stack 2016-08-24 12:15:14 +02:00
avr32 dma-mapping: use unsigned long for dma_attrs 2016-08-04 08:50:07 -04:00
blackfin ftrace: Add return address pointer to ftrace_ret_stack 2016-08-24 12:15:14 +02:00
c6x dma-mapping: use unsigned long for dma_attrs 2016-08-04 08:50:07 -04:00
cris dma-mapping: use unsigned long for dma_attrs 2016-08-04 08:50:07 -04:00
frv RTC for 4.8 2016-08-05 09:48:22 -04:00
h8300 h8300: Add missing include file to asm/io.h 2016-08-13 08:53:56 -07:00
hexagon dma-mapping: use unsigned long for dma_attrs 2016-08-04 08:50:07 -04:00
ia64 fork: Add generic vmalloced stack support 2016-08-24 12:11:41 +02:00
m32r mm: do not pass mm_struct into handle_mm_fault 2016-07-26 16:19:19 -07:00
m68k m68knommu: fix user a5 register being overwritten 2016-08-08 12:38:47 +10:00
metag metag: Drop show_mem() from mem_init() 2016-08-09 13:41:30 +01:00
microblaze ftrace: Add return address pointer to ftrace_ret_stack 2016-08-24 12:15:14 +02:00
mips ftrace: Add return address pointer to ftrace_ret_stack 2016-08-24 12:15:14 +02:00
mn10300 RTC for 4.8 2016-08-05 09:48:22 -04:00
nios2 dma-mapping: use unsigned long for dma_attrs 2016-08-04 08:50:07 -04:00
openrisc dma-mapping: use unsigned long for dma_attrs 2016-08-04 08:50:07 -04:00
parisc ftrace: Add return address pointer to ftrace_ret_stack 2016-08-24 12:15:14 +02:00
powerpc ftrace: Add return address pointer to ftrace_ret_stack 2016-08-24 12:15:14 +02:00
s390 ftrace: Add return address pointer to ftrace_ret_stack 2016-08-24 12:15:14 +02:00
score treewide: replace obsolete _refok by __ref 2016-08-02 17:31:41 -04:00
sh ftrace: Add return address pointer to ftrace_ret_stack 2016-08-24 12:15:14 +02:00
sparc ftrace: Add return address pointer to ftrace_ret_stack 2016-08-24 12:15:14 +02:00
tile ftrace: Add return address pointer to ftrace_ret_stack 2016-08-24 12:15:14 +02:00
um Merge branch 'for-linus-4.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml 2016-08-04 19:37:59 -04:00
unicore32 unicore32: mm: Add missing parameter to arch_vma_access_permitted 2016-08-13 08:53:18 -07:00
x86 x86/dumpstack: Add recursion checking for all stacks 2016-09-15 08:13:15 +02:00
xtensa dma-mapping: use unsigned long for dma_attrs 2016-08-04 08:50:07 -04:00
.gitignore
Kconfig fork: Add generic vmalloced stack support 2016-08-24 12:11:41 +02:00