linux_dsm_epyc7002/arch/arm64/kernel
Will Deacon 1059c6bf85 arm64: debug: don't re-enable debug exceptions on return from el1_dbg
When returning from a debug exception taken from EL1, we unmask debug
exceptions after handling the exception. This is crucial for debug
exceptions taken from EL0, so that any kernel work on the ret_to_user
path can be debugged by kgdb.

However, when returning back to EL1 the only thing left to do is to
restore the original register state before the exception return. If
single-step has been enabled by the debug exception handler, we will
get stuck in an infinite debug exception loop, since we will take the
step exception as soon as we unmask debug exceptions.

This patch avoids unmasking debug exceptions on the debug exception
return path when the exception was taken from EL1.

Fixes: 2a2830703a (arm64: debug: avoid accessing mdscr_el1 on fault paths where possible)
Cc: <stable@vger.kernel.org> #3.16+
Reported-by: David Long <dave.long@linaro.org>
Reported-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2014-09-23 15:49:34 +01:00
..
vdso arm64: vdso: fix build error when switching from LE to BE 2014-07-30 15:06:35 +01:00
.gitignore
arm64ksyms.c
asm-offsets.c
cpu_ops.c
cpuidle.c arm64: kernel: introduce cpu_init_idle CPU operation 2014-09-12 10:48:55 +01:00
cpuinfo.c arm64: don't flag non-aliasing VIPT I-caches as aliasing 2014-09-08 14:39:18 +01:00
cputable.c
debug-monitors.c KVM/ARM New features for 3.17 include: 2014-08-05 09:47:45 +02:00
efi-entry.S
efi-stub.c arm64/efi: efistub: don't abort if base of DRAM is occupied 2014-09-08 14:39:18 +01:00
efi.c Revert "arm64: dmi: Add SMBIOS/DMI support" 2014-09-22 18:12:37 +01:00
entry-fpsimd.S arm64: fpsimd: fix a typo in fpsimd_save_partial_state ENDPROC 2014-07-31 11:42:42 +01:00
entry-ftrace.S arm64, ftrace: Remove check of obsolete variable function_trace_stop 2014-07-18 13:58:10 -04:00
entry.S arm64: debug: don't re-enable debug exceptions on return from el1_dbg 2014-09-23 15:49:34 +01:00
fpsimd.c arm64: fix bug for reloading FPSIMD state after cpu power off 2014-09-01 12:55:21 +01:00
ftrace.c arm64: Correct ftrace calls to aarch64_insn_gen_branch_imm() 2014-09-19 12:05:45 +01:00
head.S arm64/efi: efistub: cover entire static mem footprint in PE/COFF .text 2014-09-08 14:39:18 +01:00
hw_breakpoint.c
hyp-stub.S
image.h
insn.c arm64: introduce aarch64_insn_gen_logical_shifted_reg() 2014-09-08 14:39:21 +01:00
io.c
irq.c
jump_label.c
kgdb.c
kuser32.S
Makefile arm64: kernel: introduce cpu_init_idle CPU operation 2014-09-12 10:48:55 +01:00
module.c
perf_event.c
perf_regs.c arm64: perf: don't rely on layout of pt_regs when grabbing sp or pc 2014-08-28 20:01:50 +01:00
process.c arm64: convert part of soft_restart() to assembly 2014-09-08 14:39:18 +01:00
psci.c arm64: add PSCI CPU_SUSPEND based cpu_suspend support 2014-09-12 10:48:56 +01:00
ptrace.c arm64: ptrace: fix compat reg getter/setter return values 2014-08-28 20:01:42 +01:00
return_address.c arm64: LLVMLinux: Use global stack pointer in return_address() 2014-09-08 14:39:19 +01:00
setup.c setup: Move unmask of async interrupts after possible earlycon setup 2014-09-15 18:15:09 +01:00
signal32.c Merge branch 'signal-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/misc 2014-08-09 09:58:12 -07:00
signal.c arm64: Use sigsp() 2014-08-06 13:03:45 +02:00
sleep.S arm64: kernel: refactor the CPU suspend API for retention states 2014-09-12 10:48:55 +01:00
smp_spin_table.c arm64: spin-table: handle unmapped cpu-release-addrs 2014-09-08 14:39:18 +01:00
smp.c Nicolas Pitre added generic tracepoints for tracing IPIs and updated the 2014-08-09 17:33:44 -07:00
stacktrace.c arm64: LLVMLinux: Use current_stack_pointer in save_stack_trace_tsk 2014-09-08 14:39:19 +01:00
suspend.c arm64: kernel: refactor the CPU suspend API for retention states 2014-09-12 10:48:55 +01:00
sys32.S
sys_compat.c
sys.c
time.c
topology.c
traps.c arm64: LLVMLinux: Use current_stack_pointer in kernel/traps.c 2014-09-08 14:39:19 +01:00
vdso.c arm64,ia64,ppc,s390,sh,tile,um,x86,mm: remove default gate area 2014-08-08 15:57:27 -07:00
vmlinux.lds.S