Re: [PATCH 3/3] powerpc: print right preemption model in die

From: Christophe Leroy
Date: Wed Dec 04 2024 - 01:44:55 EST




Le 25/11/2024 à 05:22, Shrikanth Hegde a écrit :
Preemption models can change at runtime with dynamic preemption in
place. So need to use the right methods instead of relying on
CONFIG_PREEMPT to decide whether its full preemption or not.

Then this patch should go _before_ activating dynamic preemption.

But at the end, with the change to avoid the full copy of preempt.h, at the end the amount of changes is small and all three patches can be squashed into a single one.


While there, fix it to print preemption model correctly.

Signed-off-by: Shrikanth Hegde <sshegde@xxxxxxxxxxxxx>
---
arch/powerpc/kernel/traps.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c
index edf5cabe5dfd..2556fa8ec019 100644
--- a/arch/powerpc/kernel/traps.c
+++ b/arch/powerpc/kernel/traps.c
@@ -266,7 +266,11 @@ static int __die(const char *str, struct pt_regs *regs, long err)
printk("%s PAGE_SIZE=%luK%s%s%s%s%s%s %s\n",
IS_ENABLED(CONFIG_CPU_LITTLE_ENDIAN) ? "LE" : "BE",
PAGE_SIZE / 1024, get_mmu_str(),
- IS_ENABLED(CONFIG_PREEMPT) ? " PREEMPT" : "",
+ preempt_model_none() ? "none" :
+ preempt_model_voluntary() ? "voluntary" :
+ preempt_model_full() ? "full" :
+ preempt_model_lazy() ? "lazy" :
+ "",
IS_ENABLED(CONFIG_SMP) ? " SMP" : "",
IS_ENABLED(CONFIG_SMP) ? (" NR_CPUS=" __stringify(NR_CPUS)) : "",
debug_pagealloc_enabled() ? " DEBUG_PAGEALLOC" : "",