Commit 84d0fb1b authored by James Morse's avatar James Morse Committed by Will Deacon

arm64: entry.S: Remove disable_dbg

enable_step_tsk is the only user of disable_dbg, which doesn't respect
our 'dai' order for exception masking. enable_step_tsk may enable
single-step, so previously needed to mask debug exceptions to prevent us
from single-stepping kernel_exit. enable_step_tsk is called at the end
of the ret_to_user loop, which has already masked all exceptions so this
is no longer needed.

Remove disable_dbg, add a comment that enable_step_tsk's caller should
have masked debug.
Signed-off-by: default avatarJames Morse <james.morse@arm.com>
Reviewed-by: default avatarJulien Thierry <julien.thierry@arm.com>
Reviewed-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
parent 8d66772e
...@@ -69,13 +69,6 @@ ...@@ -69,13 +69,6 @@
msr daif, \flags msr daif, \flags
.endm .endm
/*
* Enable and disable debug exceptions.
*/
.macro disable_dbg
msr daifset, #8
.endm
.macro enable_dbg .macro enable_dbg
msr daifclr, #8 msr daifclr, #8
.endm .endm
...@@ -89,9 +82,9 @@ ...@@ -89,9 +82,9 @@
9990: 9990:
.endm .endm
/* call with daif masked */
.macro enable_step_tsk, flgs, tmp .macro enable_step_tsk, flgs, tmp
tbz \flgs, #TIF_SINGLESTEP, 9990f tbz \flgs, #TIF_SINGLESTEP, 9990f
disable_dbg
mrs \tmp, mdscr_el1 mrs \tmp, mdscr_el1
orr \tmp, \tmp, #DBG_MDSCR_SS orr \tmp, \tmp, #DBG_MDSCR_SS
msr mdscr_el1, \tmp msr mdscr_el1, \tmp
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment