• Song Liu's avatar
    perf bpf: Synthesize bpf events with bpf_program__get_prog_info_linear() · a742258a
    Song Liu authored
    With bpf_program__get_prog_info_linear, we can simplify the logic that
    synthesizes bpf events.
    
    This patch doesn't change the behavior of the code.
    
    Commiter notes:
    
    Needed this (for all four variables), suggested by Song, to overcome
    build failure on debian experimental cross building to MIPS 32-bit:
    
      -               u8 (*prog_tags)[BPF_TAG_SIZE] = (void *)(info->prog_tags);
      +               u8 (*prog_tags)[BPF_TAG_SIZE] = (void *)(uintptr_t)(info->prog_tags);
    
      util/bpf-event.c: In function 'perf_event__synthesize_one_bpf_prog':
      util/bpf-event.c:143:35: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
         u8 (*prog_tags)[BPF_TAG_SIZE] = (void *)(info->prog_tags);
                                         ^
      util/bpf-event.c:144:22: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
         __u32 *prog_lens = (__u32 *)(info->jited_func_lens);
                            ^
      util/bpf-event.c:145:23: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
         __u64 *prog_addrs = (__u64 *)(info->jited_ksyms);
                             ^
      util/bpf-event.c:146:22: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
         void *func_infos = (void *)(info->func_info);
                            ^
      cc1: all warnings being treated as errors
    Signed-off-by: default avatarSong Liu <songliubraving@fb.com>
    Reviewed-by: default avatarJiri Olsa <jolsa@kernel.org>
    Cc: Alexei Starovoitov <ast@kernel.org>
    Cc: Daniel Borkmann <daniel@iogearbox.net>
    Cc: kernel-team@fb.com
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Stanislav Fomichev <sdf@google.com>
    Link: http://lkml.kernel.org/r/20190312053051.2690567-5-songliubraving@fb.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    a742258a
bpf-event.c 6.15 KB