Re: [PATCH] powerpc: Use new printk extension %pS to print symbols on oops

2008-07-27 Thread Linus Torvalds


On Sun, 27 Jul 2008, David Woodhouse wrote:
 
 Out of interest, why is it %pS and not %Sp? Shouldn't the modifier come
 first? What if we want to print a pointer immediately followed by a
 capital S?

Try it. 

Linus
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH] powerpc: Use new printk extension %pS to print symbols on oops

2008-07-26 Thread David Woodhouse
On Mon, 2008-07-07 at 10:08 -0700, Linus Torvalds wrote:
 On Mon, 7 Jul 2008, Benjamin Herrenschmidt wrote:
 
  This changes the oops and backtrace code to use the new %pS
  printk extension to print out symbols rather than manually
  calling print_symbol.
 
 Ok, I ended up committing the suppor for '%pS' early (as a series of 
 smaller patches to make it clearer), just because it makes it easier for 
 different people to start converthing things with the infrastructure in 
 place.

Out of interest, why is it %pS and not %Sp? Shouldn't the modifier come
first? What if we want to print a pointer immediately followed by a
capital S?

-- 
David WoodhouseOpen Source Technology Centre
[EMAIL PROTECTED]  Intel Corporation

___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH] powerpc: Use new printk extension %pS to print symbols on oops

2008-07-07 Thread Linus Torvalds


On Mon, 7 Jul 2008, Benjamin Herrenschmidt wrote:

 This changes the oops and backtrace code to use the new %pS
 printk extension to print out symbols rather than manually
 calling print_symbol.

Ok, I ended up committing the suppor for '%pS' early (as a series of 
smaller patches to make it clearer), just because it makes it easier for 
different people to start converthing things with the infrastructure in 
place.

But I wasn't planning on actually merging any of the conversions until 
after 2.6.26 (ie there will be no actual _users_ of '%pS' in 2.6.26)

Linus
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH] powerpc: Use new printk extension %pS to print symbols on oops

2008-07-07 Thread Benjamin Herrenschmidt
On Mon, 2008-07-07 at 10:08 -0700, Linus Torvalds wrote:
  This changes the oops and backtrace code to use the new %pS
  printk extension to print out symbols rather than manually
  calling print_symbol.
 
 Ok, I ended up committing the suppor for '%pS' early (as a series of 
 smaller patches to make it clearer), just because it makes it easier for 
 different people to start converthing things with the infrastructure in 
 place.
 
 But I wasn't planning on actually merging any of the conversions until 
 after 2.6.26 (ie there will be no actual _users_ of '%pS' in 2.6.26)

That's ok. I posted the patch for review/comments, I didn't intend
to have it merged before .27 opens.

Cheers,
Ben.


___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


[PATCH] powerpc: Use new printk extension %pS to print symbols on oops

2008-07-06 Thread Benjamin Herrenschmidt
This changes the oops and backtrace code to use the new %pS
printk extension to print out symbols rather than manually
calling print_symbol.

Signed-off-by: Benjamin Herrenschmidt [EMAIL PROTECTED]

 arch/powerpc/kernel/process.c |   14 +-
 1 file changed, 5 insertions(+), 9 deletions(-)

--- linux-work.orig/arch/powerpc/kernel/process.c   2008-07-07 
10:16:53.0 +1000
+++ linux-work/arch/powerpc/kernel/process.c2008-07-07 11:04:32.0 
+1000
@@ -484,10 +484,8 @@ void show_regs(struct pt_regs * regs)
 * Lookup NIP late so we have the best change of getting the
 * above info out without failing
 */
-   printk(NIP [REG] , regs-nip);
-   print_symbol(%s\n, regs-nip);
-   printk(LR [REG] , regs-link);
-   print_symbol(%s\n, regs-link);
+   printk(NIP [REG] %pS\n, regs-nip, (void *)regs-nip);
+   printk(LR [REG] %pS\n, regs-link, (void *)regs-link);
 #endif
show_stack(current, (unsigned long *) regs-gpr[1]);
if (!user_mode(regs))
@@ -971,8 +969,7 @@ void show_stack(struct task_struct *tsk,
newsp = stack[0];
ip = stack[STACK_FRAME_LR_SAVE];
if (!firstframe || ip != lr) {
-   printk([REG] [REG] , sp, ip);
-   print_symbol(%s, ip);
+   printk([REG] [REG] %pS, sp, ip, (void *)ip);
if (firstframe)
printk( (unreliable));
printk(\n);
@@ -987,10 +984,9 @@ void show_stack(struct task_struct *tsk,
 stack[STACK_FRAME_MARKER] == STACK_FRAME_REGS_MARKER) {
struct pt_regs *regs = (struct pt_regs *)
(sp + STACK_FRAME_OVERHEAD);
-   printk(--- Exception: %lx, regs-trap);
-   print_symbol( at %s\n, regs-nip);
lr = regs-link;
-   print_symbol(LR = %s\n, lr);
+   printk(--- Exception: %lx at %pS\nLR = %pS\n,
+  regs-trap, (void *)regs-nip, (void *)lr);
firstframe = 1;
}
 
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev