[BUG] perf: trace -s script is broken

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Stephane Eranian
Date: Thursday, August 12, 2010 - 2:39 am

Hi,

I am trying to understand how you're supposed to use perf trace with a
script using tip-x86.
I am running into several problems.

I did:
$ make prefix=/usr
$ sudo make install prefix=/usr

$ sudo perf record -c 1 -e raw_syscalls:sys_enter -a -- sleep 1
$ sudo perf trace -s sctop.py
Can't open python script "sctop.py": No such file or directory

I looked into this a bit more, and sure enough, it seems perf is only looking
in the current subdir to find sctop.py. However if you do:
$ perf trace -l
List of available trace scripts:
  failed-syscalls [comm]               system-wide failed syscalls
  rw-by-file <comm>                    r/w activity for a program, by file
  rw-by-pid                            system-wide r/w activity
  rwtop [interval]                     system-wide r/w top
  wakeup-latency                       system-wide min/max/avg wakeup latency
  workqueue-stats                      workqueue stats (ins/exe/create/destroy)
  failed-syscalls-by-pid [comm]        system-wide failed syscalls, by pid
  sctop [comm] [interval]              syscall top
  syscall-counts-by-pid [comm]         system-wide syscall counts, by pid
  syscall-counts [comm]                system-wide syscall counts

The listing requires trace to look at /usr/libexec/perf-core/scripts/*

I think in builtin-trace.c, you need to add the path prefix, perf_path_exec()
to the script_name for this to work correctly. Or am I missing something here?

Similarly, all the -report scripts installed via make install, still
have the ~/libexec
prefix hardcoded into them. I believe those should be relative to the
install prefix
instead.
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[BUG] perf: trace -s script is broken, Stephane Eranian, (Thu Aug 12, 2:39 am)
Re: [BUG] perf: trace -s script is broken, Tom Zanussi, (Thu Aug 12, 10:56 am)