[PATCH 1/2] trace_uprobe: Use %lx to display offset

From: Ravi Bangoria
Date: Tue Feb 06 2018 - 04:33:30 EST


Kees suggested that, 'offset' is unsigned long, not a pointer,
thus %lx should be used to print it, not the %px. Also, I don't
see any reason to prepend offset with 0s. Replace %px with %lx.

Before patch:
# echo "p:probe_a/main /tmp/a.out:0x594" > uprobe_events
# cat uprobe_events
p:probe_a/main /tmp/a.out:0x0000000000000594

After patch:
# echo "p:probe_a/main /tmp/a.out:0x594" > uprobe_events
# cat uprobe_events
p:probe_a/main /tmp/a.out:0x594

Fixes: 0e4d819d0893 ("trace_uprobe: Display correct offset in uprobe_events")
Suggested-by: Kees Cook <keescook@xxxxxxxxxxxx>
Signed-off-by: Ravi Bangoria <ravi.bangoria@xxxxxxxxxxxxxxxxxx>
---
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 268029ae1be6..c2c965398893 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%px", (void *)tu->offset);
+ seq_printf(m, "0x%lx", tu->offset);
} else {
switch (sizeof(void *)) {
case 4:
--
2.13.6