UPSTREAM: trace_uprobe: Display correct offset in uprobe_events
authorRavi Bangoria <ravi.bangoria@linux.vnet.ibm.com>
Sat, 6 Jan 2018 05:42:46 +0000 (11:12 +0530)
committerAlistair Strachan <astrachan@google.com>
Fri, 29 Mar 2019 04:16:20 +0000 (21:16 -0700)
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.

Before patch:

  # perf probe -vv -x /tmp/a.out main
  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:0x0000000049a0f352

After patch:

  # cat /sys/kernel/debug/tracing/uprobe_events
  p:probe_a/main /tmp/a.out:0x000000000000058c

Link: http://lkml.kernel.org/r/20180106054246.15375-1-ravi.bangoria@linux.vnet.ibm.com
Cc: stable@vger.kernel.org
Fixes: ad67b74d2469 ("printk: hash addresses printed with %p")
Acked-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
Signed-off-by: Ravi Bangoria <ravi.bangoria@linux.vnet.ibm.com>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
(cherry picked from commit 0e4d819d0893dc043ea7b7cb6baf4be1e310bd96)
Signed-off-by: Sandeep Patil <sspatil@android.com>
Bug: 78533979
Test: Build and boot cuttlefish
Change-Id: Iede3934b79b35063691f79abaf2d2b45e4a68cf8

kernel/trace/trace_uprobe.c

index fdf2ea4d64ecde10005314013856900ab60fe757..10d13fdcabf4a70620abbdbcc0d3b0b9a9ae841f 100644 (file)
@@ -611,7 +611,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: