From: Thomas Gleixner <t...@linutronix.de>

CONFIG_PREEMPTION is selected by CONFIG_PREEMPT and by CONFIG_PREEMPT_RT.
Both PREEMPT and PREEMPT_RT require the same functionality which today
depends on CONFIG_PREEMPT.

Switch the entry code over to use CONFIG_PREEMPTION. Add PREEMPT_RT
output to die().

Cc: Chris Zankel <ch...@zankel.net>
Cc: Max Filippov <jcmvb...@gmail.com>
Cc: linux-xte...@linux-xtensa.org
Signed-off-by: Thomas Gleixner <t...@linutronix.de>
[bigeasy: +traps.c]
Signed-off-by: Sebastian Andrzej Siewior <bige...@linutronix.de>
---
 arch/xtensa/kernel/entry.S | 2 +-
 arch/xtensa/kernel/traps.c | 7 +++++--
 2 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/arch/xtensa/kernel/entry.S b/arch/xtensa/kernel/entry.S
index 9e3676879168a..a6434813df6c8 100644
--- a/arch/xtensa/kernel/entry.S
+++ b/arch/xtensa/kernel/entry.S
@@ -520,7 +520,7 @@ ENTRY(kernel_exception)
        call4   schedule        # void schedule (void)
        j       1b
 
-#ifdef CONFIG_PREEMPT
+#ifdef CONFIG_PREEMPTION
 6:
        _bbci.l a4, TIF_NEED_RESCHED, 4f
 
diff --git a/arch/xtensa/kernel/traps.c b/arch/xtensa/kernel/traps.c
index 4a6c495ce9b6d..2e7cf56412a05 100644
--- a/arch/xtensa/kernel/traps.c
+++ b/arch/xtensa/kernel/traps.c
@@ -524,12 +524,15 @@ DEFINE_SPINLOCK(die_lock);
 void die(const char * str, struct pt_regs * regs, long err)
 {
        static int die_counter;
+       const char *pr = "";
+
+       if (IS_ENABLED(CONFIG_PREEMPTION))
+               pr = IS_ENABLED(CONFIG_PREEMPT_RT) ? " PREEMPT_RT" : " PREEMPT";
 
        console_verbose();
        spin_lock_irq(&die_lock);
 
-       pr_info("%s: sig: %ld [#%d]%s\n", str, err, ++die_counter,
-               IS_ENABLED(CONFIG_PREEMPT) ? " PREEMPT" : "");
+       pr_info("%s: sig: %ld [#%d]%s\n", str, err, ++die_counter, pr);
        show_regs(regs);
        if (!user_mode(regs))
                show_stack(NULL, (unsigned long*)regs->areg[1]);
-- 
2.23.0

Reply via email to