android_kernel_oneplus_msm8998/arch
Steven Rostedt (VMware) 1f9d5f75a7 kprobes, x86/ptrace.h: Make regs_get_kernel_stack_nth() not fault on bad stack
[ Upstream commit c2712b858187f5bcd7b042fe4daa3ba3a12635c0 ]

Andy had some concerns about using regs_get_kernel_stack_nth() in a new
function regs_get_kernel_argument() as if there's any error in the stack
code, it could cause a bad memory access. To be on the safe side, call
probe_kernel_read() on the stack address to be extra careful in accessing
the memory. A helper function, regs_get_kernel_stack_nth_addr(), was added
to just return the stack address (or NULL if not on the stack), that will be
used to find the address (and could be used by other functions) and read the
address with kernel_probe_read().

Requested-by: Andy Lutomirski <luto@amacapital.net>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Reviewed-by: Joel Fernandes (Google) <joel@joelfernandes.org>
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Josh Poimboeuf <jpoimboe@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/20181017165951.09119177@gandalf.local.home
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-11-28 18:25:44 +01:00
..
alpha
arc ARC: export "abort" for modules 2019-09-21 07:12:54 +02:00
arm ARM: 8802/1: Call syscall_trace_exit even when system call skipped 2019-11-25 15:54:51 +01:00
arm64 arm64: uaccess: Ensure PAN is re-enabled after unhandled uaccess fault 2019-11-25 15:54:52 +01:00
avr32
blackfin
c6x
cris
frv
h8300
hexagon
ia64 ia64:unwind: fix double free for mod->arch.init_unw_table 2019-10-05 12:27:47 +02:00
m32r
m68k bug.h: work around GCC PR82365 in BUG() 2019-07-10 09:56:42 +02:00
metag
microblaze
mips MIPS: kexec: Relax memory restriction 2019-11-25 15:54:08 +01:00
mn10300
nios2
openrisc
parisc parisc: Fix vmap memory leak in ioremap()/iounmap() 2019-10-29 09:13:29 +01:00
powerpc powerpc/eeh: Fix use of EEH_PE_KEEP on wrong field 2019-11-28 18:25:36 +01:00
s390 s390/cmm: fix information leak in cmm_timeout_handler() 2019-11-06 12:09:21 +01:00
score
sh sh: kernel: hw_breakpoint: Fix missing break in switch statement 2019-08-25 10:52:55 +02:00
sparc bug.h: work around GCC PR82365 in BUG() 2019-07-10 09:56:42 +02:00
tile
um um: Silence lockdep complaint about mmap_sem 2019-08-04 09:34:58 +02:00
unicore32
x86 kprobes, x86/ptrace.h: Make regs_get_kernel_stack_nth() not fault on bad stack 2019-11-28 18:25:44 +01:00
xtensa xtensa: drop EXPORT_SYMBOL for outs*/ins* 2019-10-29 09:13:29 +01:00
.gitignore
Kconfig