Re: [PATCH 13/13] arc: do not use __print_symbol()

From: Vineet Gupta
Date: Mon Dec 11 2017 - 11:30:01 EST


On 12/11/2017 04:53 AM, Sergey Senozhatsky wrote:
__print_symbol() uses extra stack space to sprintf() symbol
information and then to feed that buffer to printk()

char buffer[KSYM_SYMBOL_LEN];

sprint_symbol(buffer, address);
printk(fmt, buffer);

Replace __print_symbol() with a direct printk("%pS") call.

Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
Cc: Vineet Gupta <vgupta@xxxxxxxxxxxx>

Applied to arc for-curr

Thx,
-Vineet

---
arch/arc/kernel/stacktrace.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arc/kernel/stacktrace.c b/arch/arc/kernel/stacktrace.c
index 74315f302971..bf40e06f3fb8 100644
--- a/arch/arc/kernel/stacktrace.c
+++ b/arch/arc/kernel/stacktrace.c
@@ -163,7 +163,7 @@ arc_unwind_core(struct task_struct *tsk, struct pt_regs *regs,
*/
static int __print_sym(unsigned int address, void *unused)
{
- __print_symbol(" %s\n", address);
+ printk(" %pS\n", (void *)address);
return 0;
}