[PATCH] x86: dovetail: Call trap exit code with hard IRQs disabled
Florian Bezdeka <[email protected]>
| Newsgroups | dev.linux.lists.xenomai |
|---|---|
| Message-ID | <[email protected]> |
mark_trap_exit() should do the reverse operations of mark_trap_entry() keeping ordering in mind. Especially as oob_trap_unwind() is expecting hard IRQs to be off. Seems that this is a long standing issue, so most likely all currently maintained dovetail branches seem affected. Signed-off-by: Florian Bezdeka <[email protected]> --- arch/x86/kernel/traps.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/x86/kernel/traps.c b/arch/x86/kernel/traps.c index 6b5b33b4d511..8d1a7889626b 100644 --- a/arch/x86/kernel/traps.c +++ b/arch/x86/kernel/traps.c @@ -354,8 +354,8 @@ bool mark_trap_entry(int trapnr, struct pt_regs *regs) static __always_inline void mark_trap_exit(int trapnr, struct pt_regs *regs) { - oob_trap_unwind(trapnr, regs); hard_cond_local_irq_disable(); + oob_trap_unwind(trapnr, regs); } static __always_inline -- 2.54.0