On Mon, Jan 08, 2018 at 12:01:04PM +0530, Ravi Bangoria wrote:
> 
> 
> On 01/08/2018 10:49 AM, Srikar Dronamraju wrote:
> > * Ravi Bangoria <[email protected]> [2018-01-06 11:12:46]:
> >
> >> Recently, how the pointers being printed with %p has been changed
> >> by commit ad67b74d2469 ("printk: hash addresses printed with %p").
> >> This is causing a regression while showing offset in the
> >> uprobe_events file. Instead of %p, use %px to display offset.
> >>
> >> Signed-off-by: Ravi Bangoria <[email protected]>
> >> ---
> >>  kernel/trace/trace_uprobe.c | 2 +-
> >>  1 file changed, 1 insertion(+), 1 deletion(-)
> >>
> >> diff --git a/kernel/trace/trace_uprobe.c b/kernel/trace/trace_uprobe.c
> >> index 40592e7b3568..268029ae1be6 100644
> >> --- a/kernel/trace/trace_uprobe.c
> >> +++ b/kernel/trace/trace_uprobe.c
> >> @@ -608,7 +608,7 @@ static int probes_seq_show(struct seq_file *m, void *v)
> >>
> >>    /* Don't print "0x  (null)" when offset is 0 */
> >>    if (tu->offset) {
> >> -          seq_printf(m, "0x%p", (void *)tu->offset);
> >> +          seq_printf(m, "0x%px", (void *)tu->offset);
> >>    } else {
> >>            switch (sizeof(void *)) {
> >>            case 4:
> > Looks good to me.  Did you consider %pK instead of %px?
> 
> Thanks Srikar,
> 
> Checked %pK. But I see same issue with that:
> 
> perf probe:
>   Opening /sys/kernel/debug/tracing//uprobe_events write=1
>   Writing event: p:probe_a/main /tmp/a.out:0x58c
> 
> cat /sys/kernel/debug/tracing/uprobe_events:
>   p:probe_a/main /tmp/a.out:0x0000000014fd571e

%pK behaves the same as %p (hashes address) when kpt_restrict==0

Hope this helps,
Tobin.

Reply via email to