From: Sergey Senozhatsky <sergey.senozhatsky.work@gmail.com>
To: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
Cc: Tony Luck <tony.luck@intel.com>,
Fenghua Yu <fenghua.yu@intel.com>,
Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Paul Mackerras <paulus@samba.org>,
Michael Ellerman <mpe@ellerman.id.au>,
James Bottomley <jejb@parisc-linux.org>,
Helge Deller <deller@gmx.de>, Petr Mladek <pmladek@suse.com>,
Steven Rostedt <rostedt@goodmis.org>,
Andrew Morton <akpm@linux-foundation.org>,
Jessica Yu <jeyu@kernel.org>, Alexei Starovoitov <ast@kernel.org>,
linux-ia64@vger.kernel.org, linux-parisc@vger.kernel.org,
linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org
Subject: Re: [RFC][PATCH v2 6/7] symbol lookup: use new kernel and module dereference functions
Date: Thu, 21 Sep 2017 18:38:08 +0900 [thread overview]
Message-ID: <20170921093808.GE773@jagdpanzerIV.localdomain> (raw)
In-Reply-To: <20170920162910.32053-7-sergey.senozhatsky@gmail.com>
On (09/21/17 01:29), Sergey Senozhatsky wrote:
[..]
> + %pS versatile_init+0x0/0x110
> + %ps versatile_init
> %pF versatile_init+0x0/0x110
> %pf versatile_init
> - %pS versatile_init+0x0/0x110
> %pSR versatile_init+0x9/0x110
> (with __builtin_extract_return_addr() translation)
> - %ps versatile_init
> %pB prev_fn_of_versatile_init+0x88/0x88
>
> -The ``F`` and ``f`` specifiers are for printing function pointers,
> -for example, f->func, &gettimeofday. They have the same result as
> -``S`` and ``s`` specifiers. But they do an extra conversion on
> -ia64, ppc64 and parisc64 architectures where the function pointers
> -are actually function descriptors.
> -
> The ``S`` and ``s`` specifiers can be used for printing symbols
> from direct addresses, for example, __builtin_return_address(0),
> (void *)regs->ip. They result in the symbol name with (``S``) or
> without (``s``) offsets. If KALLSYMS are disabled then the symbol
> address is printed instead.
>
> +Note, that the ``F`` and ``f`` specifiers are identical to ``S`` (``s``)
> +and thus deprecated.
JFI,
I have updated this part. it's probably too early to completely
wipe out pF/pf info.
the updated Doc goes like this:
+Note, that the ``F`` and ``f`` specifiers are identical to ``S`` (``s``)
+and thus deprecated. We have ``F`` and ``f`` because on ia64, ppc64 and
+parisc64 function pointers are indirect and, in fact, are function
+descriptors, which require additional dereferencing before we can lookup
+the symbol. As of now, ``S`` and ``s`` perform dereferencing on those
+platforms (when needed), so ``F`` and ``f`` exist for compatibility
+reasons only.
-ss
next prev parent reply other threads:[~2017-09-21 9:38 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-09-20 16:29 [RFC][PATCH v2 0/7] printk/ia64/ppc64/parisc64: let's deprecate %pF/%pf printk specifiers Sergey Senozhatsky
2017-09-20 16:29 ` [RFC][PATCH v2 1/7] switch dereference_function_descriptor() to `unsigned long' Sergey Senozhatsky
2017-09-20 16:29 ` [RFC][PATCH v2 2/7] sections: split dereference_function_descriptor() Sergey Senozhatsky
2017-09-20 16:29 ` [RFC][PATCH v2 3/7] ia64: Add .opd based function descriptor dereference Sergey Senozhatsky
2017-09-20 16:29 ` [RFC][PATCH v2 4/7] powerpc64: " Sergey Senozhatsky
2017-09-20 16:29 ` [RFC][PATCH v2 5/7] parisc64: " Sergey Senozhatsky
2017-09-20 16:29 ` [RFC][PATCH v2 6/7] symbol lookup: use new kernel and module dereference functions Sergey Senozhatsky
2017-09-21 9:38 ` Sergey Senozhatsky [this message]
2017-09-20 16:29 ` [RFC][PATCH v2 7/7] checkpatch: add pF/pf deprecation warning Sergey Senozhatsky
2017-09-20 17:38 ` Joe Perches
2017-09-20 17:53 ` Helge Deller
2017-09-20 18:24 ` Joe Perches
2017-09-21 7:43 ` Sergey Senozhatsky
2017-09-21 0:27 ` Sergey Senozhatsky
2017-09-21 2:28 ` Joe Perches
2017-09-20 16:29 ` Sergey Senozhatsky
2017-09-20 16:33 ` Sergey Senozhatsky
2017-09-20 20:14 ` [RFC][PATCH v2 0/7] printk/ia64/ppc64/parisc64: let's deprecate %pF/%pf printk specifiers Helge Deller
2017-09-21 0:30 ` Sergey Senozhatsky
2017-09-22 5:34 ` Santosh Sivaraj
2017-09-22 8:00 ` Sergey Senozhatsky
2017-09-22 16:48 ` Luck, Tony
2017-09-25 7:05 ` Sergey Senozhatsky
2017-09-25 16:29 ` Luck, Tony
2017-09-25 17:05 ` Helge Deller
2017-09-27 5:01 ` Michael Ellerman
2017-10-19 14:11 ` Sergey Senozhatsky
2017-09-27 6:26 ` Michael Ellerman
2017-09-28 1:11 ` Sergey Senozhatsky
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=20170921093808.GE773@jagdpanzerIV.localdomain \
--to=sergey.senozhatsky.work@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=ast@kernel.org \
--cc=benh@kernel.crashing.org \
--cc=deller@gmx.de \
--cc=fenghua.yu@intel.com \
--cc=jejb@parisc-linux.org \
--cc=jeyu@kernel.org \
--cc=linux-ia64@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-parisc@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=mpe@ellerman.id.au \
--cc=paulus@samba.org \
--cc=pmladek@suse.com \
--cc=rostedt@goodmis.org \
--cc=sergey.senozhatsky@gmail.com \
--cc=tony.luck@intel.com \
/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).