20 Jan, 2010

2 commits

  • This patch fixes "perf kmem" to print usage help instead of
    doing nothing.

    Signed-off-by: Pekka Enberg
    Cc: Peter Zijlstra
    Cc: Paul Mackerras
    Cc: Arnaldo Carvalho de Melo
    Cc: Li Zefan
    Cc: Xiao Guangrong
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Pekka Enberg
     
  • It's fairly easy to overflow the "Hit" column with just few
    seconds of tracing so increase the column length to avoid broken
    formatting.

    Signed-off-by: Pekka Enberg
    Cc: Peter Zijlstra
    Cc: Paul Mackerras
    Cc: Arnaldo Carvalho de Melo
    Cc: Li Zefan
    Cc: Xiao Guangrong
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Pekka Enberg
     

17 Jan, 2010

1 commit

  • A process that changes its comm field, does this on a per kernel
    task struct basis. The timechart tool used, incorrectly, the pid
    to track this, and should have used the tid instead...

    Signed-off-by: Arjan van de Ven
    Cc: Peter Zijlstra
    Cc: Mike Galbraith
    Cc: Paul Mackerras
    Cc: Arnaldo Carvalho de Melo
    Cc: Frederic Weisbecker
    CC:
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Arjan van de Ven
     

13 Jan, 2010

2 commits

  • At least on Debian PARISC64, using:

    acme@parisc:~/git/linux-2.6-tip$ gcc -v
    Using built-in specs.
    Target: hppa-linux-gnu
    Configured with: ../src/configure -v --with-pkgversion='Debian
    4.3.4-6' --with-bugurl=file:///usr/share/doc/gcc-4.3/README.Bugs
    --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr
    --enable-shared --enable-multiarch --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --with-gxx-include-dir=/usr/include/c++/4.3 --program-suffix=-4.3 --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc --enable-mpfr --disable-libssp --enable-checking=release --build=hppa-linux-gnu --host=hppa-linux-gnu --target=hppa-linux-gnu Thread model: posix gcc version 4.3.4 (Debian 4.3.4-6)

    there are issues about using 'gcc -o /dev/null':

    /usr/bin/ld: final link failed: File truncated
    collect2: ld returned 1 exit status

    So we test that and use /dev/null in environments where it
    works, while using an .INTERMEDIATE file on those where it can't
    be used, so that the .perf.dev.null file can be used instead and
    then deleted when make exits.

    Researched-with: Kyle McMartin
    Researched-with: Mauro Carvalho Chehab
    Signed-off-by: Arnaldo Carvalho de Melo
    Cc: Frédéric Weisbecker
    Cc: Mike Galbraith
    Cc: Peter Zijlstra
    Cc: Paul Mackerras
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Arnaldo Carvalho de Melo
     
  • QUIET_STDERR is used when detecting if -fstack-protector-all can
    be used.

    Noticed while building the perf tools on a Debian PARISC64
    machine.

    Signed-off-by: Arnaldo Carvalho de Melo
    Cc: Frédéric Weisbecker
    Cc: Mike Galbraith
    Cc: Peter Zijlstra
    Cc: Paul Mackerras
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Arnaldo Carvalho de Melo
     

28 Dec, 2009

4 commits


19 Dec, 2009

1 commit

  • Fixing this:

    [acme@doppio linux-2.6-tip]$ perf diff --hell
    Error: unknown option `hell'

    usage: perf diff [] [old_file] [new_file]
    Segmentation fault
    [acme@doppio linux-2.6-tip]$

    Also go over the other such arrays to check if they all were OK,
    they are, but there were some minor changes to do like making
    one static and renaming another to match the command it refers
    to.

    Signed-off-by: Arnaldo Carvalho de Melo
    Cc: Frederic Weisbecker
    Cc: Mike Galbraith
    Cc: Peter Zijlstra
    Cc: Paul Mackerras
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Arnaldo Carvalho de Melo
     

18 Dec, 2009

1 commit

  • Pekka Enberg reported weird percentages in perf report. It
    turns out we are overflowing a 32-bit variables in struct
    events_stats on 32-bit architectures.

    Before:

    [acme@ana linux-2.6-tip]$ perf report -i pekka.perf.data 2> /dev/null | head -10
    281.96% Xorg b710a561 [.] 0x000000b710a561
    140.15% Xorg [kernel] [k] __initramfs_end
    51.56% metacity libgobject-2.0.so.0.2000.1 [.] 0x00000000026e46
    35.12% evolution libcairo.so.2.10800.6 [.] 0x000000000203bd
    33.84% metacity libpthread-2.9.so [.] 0x00000000007a3d

    After:

    [acme@ana linux-2.6-tip]$ perf report -i pekka.perf.data 2> /dev/null | head -10
    30.04% Xorg b710a561 [.] 0x000000b710a561
    14.93% Xorg [kernel] [k] __initramfs_end
    5.49% metacity libgobject-2.0.so.0.2000.1 [.] 0x00000000026e46
    3.74% evolution libcairo.so.2.10800.6 [.] 0x000000000203bd
    3.61% metacity libpthread-2.9.so [.] 0x00000000007a3d

    Reported-by: Pekka Enberg
    Tested-by: Pekka Enberg
    Signed-off-by: Arnaldo Carvalho de Melo
    Cc: Frederic Weisbecker
    Cc: Mike Galbraith
    Cc: Peter Zijlstra
    Cc: Paul Mackerras
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Arnaldo Carvalho de Melo
     

17 Dec, 2009

7 commits

  • Check new event name is same syntax as a C symbol in perf command.
    In other words, checking the name is as like as other tracepoint
    events.

    This can prevent user to create an event with useless name (e.g.
    foo|bar, foo*bar).

    Signed-off-by: Masami Hiramatsu
    Cc: Frederic Weisbecker
    Cc: Paul Mackerras
    Cc: Arnaldo Carvalho de Melo
    Cc: Steven Rostedt
    Cc: Jim Keniston
    Cc: Ananth N Mavinakayanahalli
    Cc: Christoph Hellwig
    Cc: Jason Baron
    Cc: K.Prasad
    Cc: Peter Zijlstra
    Cc: Srikar Dronamraju
    Cc: Frederic Weisbecker
    Cc: systemtap
    Cc: DLE
    LKML-Reference:
    [ v2: minor cleanups ]
    Signed-off-by: Ingo Molnar

    Masami Hiramatsu
     
  • Check whether the debugfs path is correct before executing
    a command, because perf-probe depends on debugfs.

    Signed-off-by: Masami Hiramatsu
    Cc: Frederic Weisbecker
    Cc: Paul Mackerras
    Cc: Arnaldo Carvalho de Melo
    Cc: Steven Rostedt
    Cc: Jim Keniston
    Cc: Ananth N Mavinakayanahalli
    Cc: Christoph Hellwig
    Cc: Jason Baron
    Cc: K.Prasad
    Cc: Peter Zijlstra
    Cc: Srikar Dronamraju
    Cc: systemtap
    Cc: DLE
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Masami Hiramatsu
     
  • Fix libdwarf include path to fit debian-like systems too.

    Borislav Petkov reported:

    > even after installing libdwarf-dev on my debian box here,
    > make in tools/perf/ still complains that it cannot find libdwarf:
    >
    > Makefile:491: No libdwarf.h found or old libdwarf.h found, disables dwarf
    > support. Please install libdwarf-dev/libdwarf-devel >= 20081231
    >
    > The problem is that the include path on debian is not
    > /usr/include/libdwarf/ but simply /usr/include because the debian
    > package libdwarf-dev puts the headers straight into
    > /usr/include.

    This patch adds -I/usr/include/libdwarf to BASIC_CFLAGS
    and fix probe-finder.h to include just libdwarf.h/dwarf.h.

    This patch also adds a workaround for the undefined _MIPS_SZLONG
    bug in libdwarf.h.

    Reported-by: Borislav Petkov
    Signed-off-by: Masami Hiramatsu
    Cc: Frederic Weisbecker
    Cc: Paul Mackerras
    Cc: Arnaldo Carvalho de Melo
    Cc: Peter Zijlstra
    Cc: Srikar Dronamraju
    Cc: Gabor Gombas
    Cc: systemtap
    Cc: DLE
    LKML-Reference:
    [ v2: small stylistic fixlets to probe-finder.h ]
    Signed-off-by: Ingo Molnar

    Masami Hiramatsu
     
  • Create events with a pid and cpu contraint for inherited events
    so that we get a stream per cpu, instead of all cpus contending
    on a single stream.

    Signed-off-by: Peter Zijlstra
    Cc: Arnaldo Carvalho de Melo
    Cc: fweisbec@gmail.com
    Cc: Paul Mackerras
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Peter Zijlstra
     
  • Remove that ugly usleep and provide proper serialization between
    parent and child just like perf-stat does.

    Signed-off-by: Peter Zijlstra
    Cc: Arnaldo Carvalho de Melo
    Cc: fweisbec@gmail.com
    Cc: Paul Mackerras
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Peter Zijlstra
     
  • Otherwise we do integer math and the delta values round up to
    multiples of 1.0%.

    Also, calculate absolute values. Things look precise now:

    $ perf report -i perf.data.old --sort dso,symbol | head -13
    9.02% libc-2.10.1.so [.] _IO_vfprintf_internal
    4.88% find [.] 0x00000000014af0
    2.91% [kernel] [k] __kmalloc
    2.85% [kernel] [k] ext4_htree_store_dirent
    2.50% libc-2.10.1.so [.] __GI_memmove
    2.44% [kernel] [k] half_md4_transform
    2.43% [kernel] [k] _spin_lock
    2.33% [kernel] [k] system_call
    $ perf report -i perf.data --sort dso,symbol | head -13
    8.55% libc-2.10.1.so [.] _IO_vfprintf_internal
    3.11% [kernel] [k] __kmalloc
    3.07% [kernel] [k] ext4_htree_store_dirent
    2.66% find [.] 0x00000000016bcf
    2.61% [kernel] [k] _atomic_dec_and_lock
    2.46% [kernel] [k] half_md4_transform
    2.41% libc-2.10.1.so [.] __GI_memmove
    2.30% find [.] 0x00000000009219
    $ perf diff | head -13
    9.02% -0.47% libc-2.10.1.so [.] _IO_vfprintf_internal
    2.91% +0.20% [kernel] [k] __kmalloc
    2.85% +0.23% [kernel] [k] ext4_htree_store_dirent
    1.99% +0.62% [kernel] [k] _atomic_dec_and_lock
    2.44% +0.02% [kernel] [k] half_md4_transform
    2.50% -0.09% libc-2.10.1.so [.] __GI_memmove
    1.88% +0.01% [kernel] [k] __d_lookup
    2.43% -0.75% [kernel] [k] _spin_lock
    0.97% +0.62% [kernel] [k] path_get
    1.99% -0.42% libc-2.10.1.so [.] _int_malloc
    $

    Signed-off-by: Arnaldo Carvalho de Melo
    Cc: Frédéric Weisbecker
    Cc: Mike Galbraith
    Cc: Peter Zijlstra
    Cc: Paul Mackerras
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Arnaldo Carvalho de Melo
     
  • This is a more intuitive / more meaningful default:

    $ perf diff | head -8
    9.02% +1.00% libc-2.10.1.so [.] _IO_vfprintf_internal
    2.91% -1.00% [kernel] [k] __kmalloc
    2.85% -1.00% [kernel] [k] ext4_htree_store_dirent
    1.99% -1.00% [kernel] [k] _atomic_dec_and_lock
    2.44% [kernel]
    $

    Suggested-by: Ingo Molnar
    Signed-off-by: Arnaldo Carvalho de Melo
    Cc: Frédéric Weisbecker
    Cc: Mike Galbraith
    Cc: Peter Zijlstra
    Cc: Paul Mackerras
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Arnaldo Carvalho de Melo
     

16 Dec, 2009

22 commits

  • That means that almost everything you can do with 'perf report'
    can be done with 'perf diff', for instance:

    $ perf record -f find / > /dev/null
    [ perf record: Woken up 1 times to write data ]
    [ perf record: Captured and wrote 0.062 MB perf.data (~2699
    samples) ] $ perf record -f find / > /dev/null
    [ perf record: Woken up 1 times to write data ]
    [ perf record: Captured and wrote 0.062 MB perf.data (~2687
    samples) ] perf diff | head -8
    9.02% +1.00% find libc-2.10.1.so [.] _IO_vfprintf_internal
    2.91% -1.00% find [kernel] [k] __kmalloc
    2.85% -1.00% find [kernel] [k] ext4_htree_store_dirent
    1.99% -1.00% find [kernel] [k] _atomic_dec_and_lock
    2.44% find [kernel] [k] half_md4_transform
    $

    So if you want to zoom into libc:

    $ perf diff --dsos libc-2.10.1.so | head -8
    37.34% find [.] _IO_vfprintf_internal
    10.34% find [.] __GI_memmove
    8.25% +2.00% find [.] _int_malloc
    5.07% -1.00% find [.] __GI_mempcpy
    7.62% +2.00% find [.] _int_free
    $

    And if there were multiple commands using libc, it is also
    possible to aggregate them all by using --sort symbol:

    $ perf diff --dsos libc-2.10.1.so --sort symbol | head -8
    37.34% [.] _IO_vfprintf_internal
    10.34% [.] __GI_memmove
    8.25% +2.00% [.] _int_malloc
    5.07% -1.00% [.] __GI_mempcpy
    7.62% +2.00% [.] _int_free
    $

    The displacement column now is off by default, to use it:

    perf diff -m --dsos libc-2.10.1.so --sort symbol | head -8
    37.34% [.] _IO_vfprintf_internal
    10.34% [.] __GI_memmove
    8.25% +2.00% [.] _int_malloc
    5.07% -1.00% +2 [.] __GI_mempcpy
    7.62% +2.00% -1 [.] _int_free
    $

    Using -t/--field-separator can be used for scripting:

    $ perf diff -t, -m --dsos libc-2.10.1.so --sort symbol | head -8
    37.34, , ,[.] _IO_vfprintf_internal
    10.34, , ,[.] __GI_memmove
    8.25,+2.00%, ,[.] _int_malloc
    5.07,-1.00%, +2,[.] __GI_mempcpy
    7.62,+2.00%, -1,[.] _int_free
    6.99,+1.00%, -1,[.] _IO_new_file_xsputn
    1.89,-2.00%, +4,[.] __readdir64
    $

    Signed-off-by: Arnaldo Carvalho de Melo
    Cc: Frédéric Weisbecker
    Cc: Mike Galbraith
    Cc: Peter Zijlstra
    Cc: Paul Mackerras
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Arnaldo Carvalho de Melo
     
  • Introduced in:

    d599db3fc5dd4f1e8432fdbc6d899584b25f4dff
    "perf report: Generalize perf_session__fprintf_hists()"

    Signed-off-by: Arnaldo Carvalho de Melo
    Cc: Frédéric Weisbecker
    Cc: Mike Galbraith
    Cc: Peter Zijlstra
    Cc: Paul Mackerras
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Arnaldo Carvalho de Melo
     
  • Those don't make sense for tools such as 'perf diff'.

    Signed-off-by: Arnaldo Carvalho de Melo
    Cc: Frédéric Weisbecker
    Cc: Mike Galbraith
    Cc: Peter Zijlstra
    Cc: Paul Mackerras
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Arnaldo Carvalho de Melo
     
  • Will be used in other tools such as 'perf diff'.

    Signed-off-by: Arnaldo Carvalho de Melo
    Cc: Frédéric Weisbecker
    Cc: Mike Galbraith
    Cc: Peter Zijlstra
    Cc: Paul Mackerras
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Arnaldo Carvalho de Melo
     
  • Pull it out of builtin-report - further changes will be made and it
    will then be reusable in 'perf diff' as well.

    Signed-off-by: Arnaldo Carvalho de Melo
    Cc: Frédéric Weisbecker
    Cc: Mike Galbraith
    Cc: Peter Zijlstra
    Cc: Paul Mackerras
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Arnaldo Carvalho de Melo
     
  • So that --dsos, --comm, --symbols can bem used in more tools,
    like in perf diff:

    $ perf record -f find / > /dev/null
    $ perf record -f find / > /dev/null
    $ perf diff --dsos /lib64/libc-2.10.1.so | head -5
    1 +22392124 /lib64/libc-2.10.1.so _IO_vfprintf_internal
    2 +6410655 /lib64/libc-2.10.1.so __GI_memmove
    3 +1 +9192692 /lib64/libc-2.10.1.so _int_malloc
    4 -1 -15158605 /lib64/libc-2.10.1.so _int_free
    5 +45669 /lib64/libc-2.10.1.so _IO_new_file_xsputn
    $

    Signed-off-by: Arnaldo Carvalho de Melo
    Cc: Frédéric Weisbecker
    Cc: Mike Galbraith
    Cc: Peter Zijlstra
    Cc: Paul Mackerras
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Arnaldo Carvalho de Melo
     
  • Will be used in perf diff too.

    Signed-off-by: Arnaldo Carvalho de Melo
    Cc: Frédéric Weisbecker
    Cc: Mike Galbraith
    Cc: Peter Zijlstra
    Cc: Paul Mackerras
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Arnaldo Carvalho de Melo
     
  • This simplifies a lot of functions, less stuff to be done by
    tool writers.

    Signed-off-by: Arnaldo Carvalho de Melo
    Cc: Frédéric Weisbecker
    Cc: Mike Galbraith
    Cc: Peter Zijlstra
    Cc: Paul Mackerras
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Arnaldo Carvalho de Melo
     
  • Fix perf probe to show which probe point is not found.
    With out this patch, it shows just "No probe point found."
    This doesn't help users if they specify several probes.
    e.g.

    # perf probe -f --add schedule --add test
    Fatal: No probe point found.

    This patch makes error message more helpful as below.

    # perf probe --add schedule --add test
    Fatal: Probe point 'test' not found. - probe not added.

    Signed-off-by: Masami Hiramatsu
    Cc: Paul Mackerras
    Cc: Arnaldo Carvalho de Melo
    Cc: Steven Rostedt
    Cc: Jim Keniston
    Cc: Ananth N Mavinakayanahalli
    Cc: Christoph Hellwig
    Cc: Frank Ch. Eigler
    Cc: Jason Baron
    Cc: K.Prasad
    Cc: Peter Zijlstra
    Cc: Srikar Dronamraju
    Cc: systemtap
    Cc: DLE
    Cc: Frederic Weisbecker
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Masami Hiramatsu
     
  • Check symbols in symtab/kallsyms when no debuginfo
    is available.

    e.g.

    # perf probe test
    Fatal: Kernel symbol 'test' not found - probe not added.

    Signed-off-by: Masami Hiramatsu
    Cc: Paul Mackerras
    Cc: Arnaldo Carvalho de Melo
    Cc: Steven Rostedt
    Cc: Jim Keniston
    Cc: Ananth N Mavinakayanahalli
    Cc: Christoph Hellwig
    Cc: Frank Ch. Eigler
    Cc: Jason Baron
    Cc: K.Prasad
    Cc: Peter Zijlstra
    Cc: Srikar Dronamraju
    Cc: systemtap
    Cc: DLE
    Cc: Frederic Weisbecker
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Masami Hiramatsu
     
  • Check build-id of vmlinux by using functions in symbol.c.
    This also exposes map__load() for getting vmlinux path,
    and removes vmlinux path list in builtin-probe.c,
    because symbol.c already has that. Checking build-id
    prevents users to open old or different debuginfo from
    current running kernel.

    Signed-off-by: Masami Hiramatsu
    Cc: Paul Mackerras
    Cc: Arnaldo Carvalho de Melo
    Cc: Steven Rostedt
    Cc: Jim Keniston
    Cc: Ananth N Mavinakayanahalli
    Cc: Christoph Hellwig
    Cc: Frank Ch. Eigler
    Cc: Jason Baron
    Cc: K.Prasad
    Cc: Peter Zijlstra
    Cc: Srikar Dronamraju
    Cc: systemtap
    Cc: DLE
    Cc: Frederic Weisbecker
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Masami Hiramatsu
     
  • Reject second attempt of adding same-name event. This patch
    also provides --force option which allows user to add additional
    probe events on the same-name event.

    e.g.
    (the first attempt : success)
    ./perf probe schedule
    Added new event:
    probe:schedule (on schedule+0)

    (the second attempt : failure)
    ./perf probe schedule:11
    Error: event "schedule" already exists. (Use -f to force duplicates.)
    Fatal: Can't add new event.

    (the second attempt with -f : successfully added)
    ./perf probe -f schedule:11
    Added new event:
    probe:schedule_1 (on schedule+45)

    Signed-off-by: Masami Hiramatsu
    Cc: Paul Mackerras
    Cc: Arnaldo Carvalho de Melo
    Cc: Steven Rostedt
    Cc: Jim Keniston
    Cc: Ananth N Mavinakayanahalli
    Cc: Christoph Hellwig
    Cc: Frank Ch. Eigler
    Cc: Jason Baron
    Cc: K.Prasad
    Cc: Peter Zijlstra
    Cc: Srikar Dronamraju
    Cc: systemtap
    Cc: DLE
    Cc: Frederic Weisbecker
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Masami Hiramatsu
     
  • Support event name syntax for --add option. This allows
    users to specify event name for each new event.

    The --add syntax is:
    perf probe --add '[EVENT=]SRC:LINE ARGS'
    or
    perf probe --add '[EVENT=]FUNC[+OFFS|%return|:RLN][@SRC] ARGS'

    e.g.

    ./perf probe --add myprobe1=schedule

    Note: currently group name is not supported yet, because it
    can cause name-space confliction with other tracepoint/
    hw-breakpoint events.

    Signed-off-by: Masami Hiramatsu
    Cc: Paul Mackerras
    Cc: Arnaldo Carvalho de Melo
    Cc: Steven Rostedt
    Cc: Jim Keniston
    Cc: Ananth N Mavinakayanahalli
    Cc: Christoph Hellwig
    Cc: Frank Ch. Eigler
    Cc: Jason Baron
    Cc: K.Prasad
    Cc: Peter Zijlstra
    Cc: Srikar Dronamraju
    Cc: systemtap
    Cc: DLE
    Cc: Frederic Weisbecker
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Masami Hiramatsu
     
  • Add glob-expression matching support on --del option.
    You can use wildcards for specifying deleting events.
    e.g.

    Clear all probe events:

    # perf probe --del '*'

    Clear probes on schedule():

    # perf probe --del 'schedule*'

    Signed-off-by: Masami Hiramatsu
    Cc: Paul Mackerras
    Cc: Arnaldo Carvalho de Melo
    Cc: Steven Rostedt
    Cc: Jim Keniston
    Cc: Ananth N Mavinakayanahalli
    Cc: Christoph Hellwig
    Cc: Frank Ch. Eigler
    Cc: Jason Baron
    Cc: K.Prasad
    Cc: Peter Zijlstra
    Cc: Srikar Dronamraju
    Cc: systemtap
    Cc: DLE
    Cc: Frederic Weisbecker
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Masami Hiramatsu
     
  • Use strlist__for_each macros instead of using strlist__entry()
    and index variable.

    Signed-off-by: Masami Hiramatsu
    Cc: Paul Mackerras
    Cc: Arnaldo Carvalho de Melo
    Cc: Steven Rostedt
    Cc: Jim Keniston
    Cc: Ananth N Mavinakayanahalli
    Cc: Christoph Hellwig
    Cc: Frank Ch. Eigler
    Cc: Jason Baron
    Cc: K.Prasad
    Cc: Peter Zijlstra
    Cc: Srikar Dronamraju
    Cc: systemtap
    Cc: DLE
    Cc: Frederic Weisbecker
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Masami Hiramatsu
     
  • Add for_each iteration macros for strlist. This patch
    introduces strlist__for_each() and strlist__for_each_safe(),
    both are similar to list_for_each() and list_for_each_safe().

    Signed-off-by: Masami Hiramatsu
    Cc: Paul Mackerras
    Cc: Arnaldo Carvalho de Melo
    Cc: Steven Rostedt
    Cc: Jim Keniston
    Cc: Ananth N Mavinakayanahalli
    Cc: Christoph Hellwig
    Cc: Frank Ch. Eigler
    Cc: Jason Baron
    Cc: K.Prasad
    Cc: Peter Zijlstra
    Cc: Srikar Dronamraju
    Cc: systemtap
    Cc: DLE
    Cc: Frederic Weisbecker
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Masami Hiramatsu
     
  • Fix --del option to update current existing event list
    after perf probe deleted an event.

    Signed-off-by: Masami Hiramatsu
    Cc: Paul Mackerras
    Cc: Arnaldo Carvalho de Melo
    Cc: Steven Rostedt
    Cc: Jim Keniston
    Cc: Ananth N Mavinakayanahalli
    Cc: Christoph Hellwig
    Cc: Frank Ch. Eigler
    Cc: Jason Baron
    Cc: K.Prasad
    Cc: Peter Zijlstra
    Cc: Srikar Dronamraju
    Cc: systemtap
    Cc: DLE
    Cc: Frederic Weisbecker
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Masami Hiramatsu
     
  • Fix --del option to show info message instead of warning
    if failing to find specified event.

    Signed-off-by: Masami Hiramatsu
    Cc: Paul Mackerras
    Cc: Arnaldo Carvalho de Melo
    Cc: Steven Rostedt
    Cc: Jim Keniston
    Cc: Ananth N Mavinakayanahalli
    Cc: Christoph Hellwig
    Cc: Frank Ch. Eigler
    Cc: Jason Baron
    Cc: K.Prasad
    Cc: Peter Zijlstra
    Cc: Srikar Dronamraju
    Cc: systemtap
    Cc: DLE
    Cc: Frederic Weisbecker
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Masami Hiramatsu
     
  • Show need-dwarf message only if the probe is really requires
    debuginfo analysis. This also use pr_debug for debugging message
    instead of pr_warning.

    Signed-off-by: Masami Hiramatsu
    Cc: Paul Mackerras
    Cc: Arnaldo Carvalho de Melo
    Cc: Steven Rostedt
    Cc: Jim Keniston
    Cc: Ananth N Mavinakayanahalli
    Cc: Christoph Hellwig
    Cc: Frank Ch. Eigler
    Cc: Jason Baron
    Cc: K.Prasad
    Cc: Peter Zijlstra
    Cc: Srikar Dronamraju
    Cc: systemtap
    Cc: DLE
    Cc: Frederic Weisbecker
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Masami Hiramatsu
     
  • Check hyphen only command argument, because perf-probe doesn't
    support event recording feature yet.

    e.g.

    # perf probe -
    Error: '-' is not supported.

    Signed-off-by: Masami Hiramatsu
    Cc: Paul Mackerras
    Cc: Arnaldo Carvalho de Melo
    Cc: Steven Rostedt
    Cc: Jim Keniston
    Cc: Ananth N Mavinakayanahalli
    Cc: Christoph Hellwig
    Cc: Frank Ch. Eigler
    Cc: Jason Baron
    Cc: K.Prasad
    Cc: Peter Zijlstra
    Cc: Srikar Dronamraju
    Cc: systemtap
    Cc: DLE
    Cc: Frederic Weisbecker
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Masami Hiramatsu
     
  • Fix show_perf_probe_event() to check the result of e_snprintf().

    Signed-off-by: Masami Hiramatsu
    Cc: Paul Mackerras
    Cc: Arnaldo Carvalho de Melo
    Cc: Steven Rostedt
    Cc: Jim Keniston
    Cc: Ananth N Mavinakayanahalli
    Cc: Christoph Hellwig
    Cc: Frank Ch. Eigler
    Cc: Jason Baron
    Cc: K.Prasad
    Cc: Peter Zijlstra
    Cc: Srikar Dronamraju
    Cc: systemtap
    Cc: DLE
    Cc: Frederic Weisbecker
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Masami Hiramatsu
     
  • Clean up struct session in builtin-probe.c, including
    change need_dwarf to bool and move listing flag into
    struct session as list_events flag.

    This also changes parse_perf_probe_event() interface
    due to code readability.

    Signed-off-by: Masami Hiramatsu
    Cc: Paul Mackerras
    Cc: Arnaldo Carvalho de Melo
    Cc: Steven Rostedt
    Cc: Jim Keniston
    Cc: Ananth N Mavinakayanahalli
    Cc: Christoph Hellwig
    Cc: Frank Ch. Eigler
    Cc: Jason Baron
    Cc: K.Prasad
    Cc: Peter Zijlstra
    Cc: Srikar Dronamraju
    Cc: systemtap
    Cc: DLE
    Cc: Frederic Weisbecker
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Masami Hiramatsu