1. 28 11月, 2015 9 次提交
  2. 27 11月, 2015 14 次提交
  3. 26 11月, 2015 3 次提交
    • W
      tools lib bpf: Don't do a feature check when cleaning · d8ad6a15
      Wang Nan 提交于
      Before this patch libbpf always do feature check even when cleaning.
      
      For example:
      
        $ cd kernel/tools/lib/bpf
        $ make
      
        Auto-detecting system features:
        ...                        libelf: [ on  ]
        ...                           bpf: [ on  ]
      
          CC       libbpf.o
          CC       bpf.o
          LD       libbpf-in.o
          LINK     libbpf.a
          LINK     libbpf.so
        $ make clean
          CLEAN    libbpf
          CLEAN    core-gen
        $ make clean
      
        Auto-detecting system features:
        ...                        libelf: [ on  ]
        ...                           bpf: [ on  ]
      
          CLEAN    libbpf
          CLEAN    core-gen
        $
      
      Although the first 'make clean' doesn't show feature check result, it
      still does the check. No output because check result is similar to
      FEATURE-DUMP.libbpf.
      
      This patch uses same method as perf to turn off feature checking when
      'make clean'.
      Reported-and-Tested-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      Signed-off-by: NWang Nan <wangnan0@huawei.com>
      Cc: Alexei Starovoitov <ast@kernel.org>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
      Cc: Zefan Li <lizefan@huawei.com>
      Cc: pi3orama@163.com
      Link: http://lkml.kernel.org/r/1448372181-151723-3-git-send-email-wangnan0@huawei.comSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      d8ad6a15
    • W
      tools build: Clean CFLAGS and LDFLAGS for fixdep · 5725dd8f
      Wang Nan 提交于
      Sometimes passing variables to tools/build is dangerous. For example, on
      my platform there is a gcc problem (gcc 4.8.1):
      
      It passes the stackprotector-all feature check:
      
        $ gcc -fstack-protector-all -c ./test.c
        $ echo $?
        0
      
      But requires LDFLAGS support if separate compiling and linking:
        $ gcc -fstack-protector-all -c ./test.c
        $ gcc ./test.o
        ./test.o: In function `main':
        test.c:(.text+0xb): undefined reference to `__stack_chk_guard'
        test.c:(.text+0x21): undefined reference to `__stack_chk_guard'
        collect2: error: ld returned 1 exit status
        $ gcc -fstack-protector-all ./test.o
        $ echo $?
        0
        $ gcc ./test.o -lssp
        $ echo $?
        0
        $
      
      In this environment building perf throws an error:
      
        $ make
          BUILD:   Doing 'make -j24' parallel build
        config/Makefile:344: No libunwind found. Please install libunwind-dev[el] >= 1.1 and/or set LIBUNWIND_DIR
        config/Makefile:403: No libaudit.h found, disables 'trace' tool, please install audit-libs-devel or libaudit-dev
        config/Makefile:418: slang not found, disables TUI support. Please install slang-devel or libslang-dev
        config/Makefile:432: GTK2 not found, disables GTK2 support. Please install gtk2-devel or libgtk2.0-dev
        config/Makefile:564: No bfd.h/libbfd found, please install binutils-dev[el]/zlib-static/libiberty-dev to gain symbol demangling
        config/Makefile:606: No numa.h found, disables 'perf bench numa mem' benchmark, please install numactl-devel/libnuma-devel/libnuma-dev
          CC       fixdep.o
          LD       fixdep-in.o
          LINK     fixdep
        fixdep-in.o: In function `parse_dep_file':
        /kernel/tools/build/fixdep.c:47: undefined reference to `__stack_chk_guard'
        /kernel/tools/build/fixdep.c:117: undefined reference to `__stack_chk_guard'
        fixdep-in.o: In function `main':
        /kernel-hydrogen/tools/build/fixdep.c:156: undefined reference to `__stack_chk_guard'
        /kernel/tools/build/fixdep.c:168: undefined reference to `__stack_chk_guard'
        collect2: error: ld returned 1 exit status
        make[2]: *** [fixdep] Error 1
        make[1]: *** [fixdep] Error 2
        make: *** [all] Error 2
      
      This is because the CFLAGS used in building perf pollutes the CFLAGS
      used for fixdep, passing -fstack-protector-all to buiold fixdep which is
      obviously not required. Since fixdep is a small host side tool, we
      should keep its CFLAGS/LDFLAGS simple and clean.
      
      This patch clears the CFLAGS and LDFLAGS passed when building fixdep, so
      such gcc problem won't block the perf build process.
      Signed-off-by: NWang Nan <wangnan0@huawei.com>
      Acked-by: NJiri Olsa <jolsa@kernel.org>
      Cc: Alexei Starovoitov <ast@kernel.org>
      Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
      Cc: Zefan Li <lizefan@huawei.com>
      Cc: pi3orama@163.com
      Link: http://lkml.kernel.org/r/1448372181-151723-2-git-send-email-wangnan0@huawei.comSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      5725dd8f
    • M
      perf probe: Fix to free temporal Dwarf_Frame correctly · 4d3b1626
      Masami Hiramatsu 提交于
      The commit 05c8d802 ("perf probe: Fix to free temporal Dwarf_Frame")
      tried to fix the memory leak of Dwarf_Frame, but it released the frame
      at wrong point. Since the dwarf_frame_cfa(frame, &pf->fb_ops, &nops) can
      return an address inside the frame data structure to pf->fb_ops, we can
      not release the frame before using pf->fb_ops.
      
      This reverts the commit and releases the frame afterwards (right before
      returning from call_probe_finder) correctly.
      Reported-and-Tested-by: NArnaldo Carvalho de Melo <acme@kernel.org>
      Reported-by: NMichael Petlan <mpetlan@redhat.com>
      Signed-off-by: NMasami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Wang Nan <wangnan0@huawei.com>
      Fixes: 05c8d802 ("perf probe: Fix to free temporal Dwarf_Frame")
      LPU-Reference: 20151125103432.1473.31009.stgit@localhost.localdomain
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      4d3b1626
  4. 24 11月, 2015 8 次提交
  5. 21 11月, 2015 1 次提交
  6. 20 11月, 2015 5 次提交