From: sergey.senozhatsky.work@gmail.com (Sergey Senozhatsky)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 00/13] replace print_symbol() with printk()-s
Date: Fri, 5 Jan 2018 21:01:31 +0900 [thread overview]
Message-ID: <20180105120131.GA417@jagdpanzerIV> (raw)
In-Reply-To: <20180105102105.GB471@jagdpanzerIV>
On (01/05/18 19:21), Sergey Senozhatsky wrote:
> > print_symbol() is an old weird API. It has been
> > obsoleted by printk() and %pS format specifier.
>
> I wouldn't. let's drop the "weird" part.
hm...
you are right, it is weird. and the weird part here is that
print_symbol() is used for things like __show_regs()
print_symbol("PC is at %s\n", instruction_pointer(regs));
print_symbol("LR is at %s\n", regs->ARM_lr);
printk("pc : [<%08lx>] lr : [<%08lx>] psr: %08lx\n",
regs->ARM_pc, regs->ARM_lr, regs->ARM_cpsr);
or for EMERG error reporting
pr_emerg("unexpected fault for address: 0x%08lx, last fault for address: 0x%08lx\n",
addr, my_reason->addr);
print_pte(addr);
print_symbol(KERN_EMERG "faulting IP is at %s\n", regs->ip);
print_symbol(KERN_EMERG "last faulting IP was at %s\n", my_reason->ip);
#ifdef __i386__
pr_emerg("eax: %08lx ebx: %08lx ecx: %08lx edx: %08lx\n",
regs->ax, regs->bx, regs->cx, regs->dx);
or for error reporting in sysfs
print_symbol("fill_read_buffer: %s returned bad count\n",
(unsigned long)ops->show);
and so on.
but, print_symbol() is compiled out on !CONFIG_KALLSYMS systems. so,
basically, we compile out some of errors print outs; even more, on ia64
ia64_do_show_stack() does nothing when there is no CONFIG_KALLSYMS [all
ia64 defconfigs have KALLSYMS_ALL enabled]. printk(%pS), unlike
print_symbol(), is not compiled out and prints the function address
when symbolic name is not available. but, at a glance, print_symbol()
in most of the cases has printk(registers) next to it or before it, so
it doesn't look like we are introducing a regression here by switching
to printk(%pS).
-ss
next prev parent reply other threads:[~2018-01-05 12:01 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-12-11 12:50 [PATCH 00/13] replace print_symbol() with printk()-s Sergey Senozhatsky
2017-12-11 12:50 ` [PATCH 01/13] arm: do not use print_symbol() Sergey Senozhatsky
2017-12-11 12:50 ` [PATCH 02/13] arm64: " Sergey Senozhatsky
2017-12-11 12:50 ` [PATCH 03/13] c6x: " Sergey Senozhatsky
2017-12-11 12:50 ` [PATCH 04/13] ia64: " Sergey Senozhatsky
2017-12-11 12:50 ` [PATCH 05/13] mn10300: " Sergey Senozhatsky
2017-12-11 12:50 ` [PATCH 06/13] sh: " Sergey Senozhatsky
2017-12-11 12:50 ` [PATCH 07/13] unicore32: " Sergey Senozhatsky
2017-12-11 12:50 ` [PATCH 08/13] x86: " Sergey Senozhatsky
2017-12-11 17:45 ` Borislav Petkov
2017-12-12 2:41 ` Sergey Senozhatsky
2017-12-11 12:50 ` [PATCH 09/13] drivers: " Sergey Senozhatsky
2017-12-11 12:50 ` [PATCH 10/13] sysfs: " Sergey Senozhatsky
2017-12-11 12:50 ` [PATCH 11/13] irq debug: " Sergey Senozhatsky
2017-12-11 12:55 ` David Laight
2017-12-12 2:50 ` Sergey Senozhatsky
2017-12-12 7:34 ` [PATCHv2 " Sergey Senozhatsky
2017-12-11 12:50 ` [PATCH 12/13] lib: " Sergey Senozhatsky
2017-12-11 12:50 ` [PATCH 13/13] arc: do not use __print_symbol() Sergey Senozhatsky
2017-12-11 16:28 ` Vineet Gupta
2017-12-12 2:41 ` Sergey Senozhatsky
2017-12-11 16:26 ` [PATCH 00/13] replace print_symbol() with printk()-s Joe Perches
2017-12-12 2:47 ` Sergey Senozhatsky
2017-12-12 3:10 ` Joe Perches
2017-12-21 5:54 ` Sergey Senozhatsky
2017-12-20 10:20 ` Sergey Senozhatsky
2018-01-05 10:03 ` Petr Mladek
2018-01-05 10:21 ` Sergey Senozhatsky
2018-01-05 10:25 ` Sergey Senozhatsky
2018-01-05 14:42 ` Petr Mladek
2018-01-05 14:57 ` Sergey Senozhatsky
2018-01-08 2:09 ` Sergey Senozhatsky
[not found] ` <20180116163301.lh76kvjheyobjgkp@pathway.suse.cz>
2018-01-17 2:36 ` Sergey Senozhatsky
2018-01-05 11:38 ` Petr Mladek
2018-01-05 12:01 ` Sergey Senozhatsky [this message]
2018-01-05 12:23 ` Sergey Senozhatsky
2018-01-05 13:09 ` Petr Mladek
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180105120131.GA417@jagdpanzerIV \
--to=sergey.senozhatsky.work@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).