• Yonghong Song's avatar
    bpf: change fake_ip for bpf_trace_printk helper · eefa864a
    Yonghong Song authored
    Currently, for bpf_trace_printk helper, fake ip address 0x1
    is used with comments saying that fake ip will not be printed.
    This is indeed true for 4.12 and earlier version, but for
    4.13 and later version, the ip address will be printed if
    it cannot be resolved with kallsym. Running samples/bpf/tracex5
    program and you will have the following in the debugfs
    trace_pipe output:
      ...
      <...>-1819  [003] ....   443.497877: 0x00000001: mmap
      <...>-1819  [003] ....   443.498289: 0x00000001: syscall=102 (one of get/set uid/pid/gid)
      ...
    
    The kernel commit changed this behavior is:
      commit feaf1283
      Author: Steven Rostedt (VMware) <rostedt@goodmis.org>
      Date:   Thu Jun 22 17:04:55 2017 -0400
    
          tracing: Show address when function names are not found
      ...
    
    This patch changed the comment and also altered the fake ip
    address to 0x0 as users may think 0x1 has some special meaning
    while it doesn't. The new output:
      ...
      <...>-1799  [002] ....    25.953576: 0: mmap
      <...>-1799  [002] ....    25.953865: 0: read(fd=0, buf=00000000053936b5, size=512)
      ...
    Signed-off-by: default avatarYonghong Song <yhs@fb.com>
    Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
    eefa864a
bpf_trace.c 23.3 KB