Thread (15 messages) 15 messages, 3 authors, 2025-02-10

Re: [PATCH v3 5/9] powerpc: Use preempt_model_str().

From: Shrikanth Hegde <hidden>
Date: 2025-02-08 14:11:51
Also in: linux-rt-devel, lkml


On 2/8/25 18:25, Christophe Leroy wrote:

Le 08/02/2025 à 08:35, Shrikanth Hegde a écrit :
quoted

On 2/4/25 13:52, Sebastian Andrzej Siewior wrote:
quoted
Use preempt_model_str() instead of manually conducting the preemption
model. Use pr_emerg() instead of printk() to pass a loglevel.
even on powerpc, i see __die ends up calling show_regs_print_info().
Why print it twice?
I don't understand what you mean, what is printed twice ?

I can't see show_regs_print_info() printing the preemption model, am I 
missing something ?
Patch 2/9 add preemption string in dump_stack_print_info.

__die -> show_regs() _> show_regs_print_info() -> 
dump_stack_print_info() -> init_utsname()->version, preempt_model_str(), 
BUILD_ID_VAL);

Wont we end up in this path?
Christophe
quoted
quoted
Cc: Madhavan Srinivasan <maddy@linux.ibm.com>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Nicholas Piggin <npiggin@gmail.com>
Cc: Christophe Leroy <redacted>
Cc: Naveen N Rao <naveen@kernel.org>
Cc: linuxppc-dev@lists.ozlabs.org
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
---
v2…v3:
   - Use printk() instead of pr_emerg() to remain consistent with the
     other invocations in terms of printing context.

  arch/powerpc/kernel/traps.c | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c
index edf5cabe5dfdb..d6d77d92b3358 100644
--- a/arch/powerpc/kernel/traps.c
+++ b/arch/powerpc/kernel/traps.c
@@ -263,10 +263,10 @@ static int __die(const char *str, struct 
pt_regs *regs, long err)
  {
      printk("Oops: %s, sig: %ld [#%d]\n", str, err, ++die_counter);
-    printk("%s PAGE_SIZE=%luK%s%s%s%s%s%s %s\n",
+    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_str(),
             IS_ENABLED(CONFIG_SMP) ? " SMP" : "",
             IS_ENABLED(CONFIG_SMP) ? (" NR_CPUS=" 
__stringify(NR_CPUS)) : "",
             debug_pagealloc_enabled() ? " DEBUG_PAGEALLOC" : "",
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help