From: Tom Zanussi on
Hi,

On Thu, Aug 12, 2010 at 4:39 AM, Stephane Eranian <eranian(a)google.com> wrote:
> 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.
>

Yeah, I had previously submitted a patch to fix this, but that patch
introduced another bug.

I'll send an updated v2 patch shortly that should fix both problems...

Thanks,

Tom
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/