Re: [GIT PULL 00/16] perf/core improvements and fixes

From: Namhyung Kim
Date: Tue Feb 14 2012 - 00:11:02 EST


2012-02-14 12:07 PM, Namhyung Kim wrote:
2012-02-14 ìì 11:50, Namhyung Kim ì ê:
Hello,

2012-02-14 10:52 AM, Arnaldo Carvalho de Melo wrote:
The following changes since commit c98fdeaa92731308ed80386261fa2589addefa47:

x86/sched/perf/AMD: Set sched_clock_stable (2012-02-07 13:12:08 +0100)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux perf-core-for-mingo

for you to fetch changes up to 7e1ccd3804281fc0755eb726b654469c40a96d89:

perf tools: cleanup initialization of attr->size (2012-02-13 23:35:04 -0200)

----------------------------------------------------------------
perf/core fixes and improvements.

Signed-off-by: Arnaldo Carvalho de Melo<acme@xxxxxxxxxx>


I've got a following error during a simple test:

$ ./perf record -- sleep 1

Error: sys_perf_event_open() syscall returned with 22 (Invalid argument).
/bin/dmesg may provide additional information.

Fatal: No CONFIG_PERF_EVENTS=y kernel support configured?

sleep: Terminated


Any thoughts?

Thanks,
Namhyung


git bisect told me:

c4a7dca92bbb9881a5d678720f1d0c2153499749 is the first bad commit
commit c4a7dca92bbb9881a5d678720f1d0c2153499749
Author: Joerg Roedel<joerg.roedel@xxxxxxx>
Date: Fri Feb 10 18:05:05 2012 +0100

perf tools: Change perf_guest default back to false

Setting perf_guest to true by default makes no sense because the perf
subcommands can not setup guest symbol information and thus not process
and guest samples. The only exception is perf-kvm which changes the
perf_guest value on its own. So change the default for perf_guest back
to false.

Cc: David Ahern<dsahern@xxxxxxxxx>
Cc: Ingo Molnar<mingo@xxxxxxx>
Cc: Jason Wang<jasowang@xxxxxxxxxx>
Cc: Paul Mackerras<paulus@xxxxxxxxx>
Cc: Peter Zijlstra<a.p.zijlstra@xxxxxxxxx>
Link: http://lkml.kernel.org/r/1328893505-4115-3-git-send-email-joerg.roedel@xxxxxxx
Signed-off-by: Joerg Roedel<joerg.roedel@xxxxxxx>
Signed-off-by: Arnaldo Carvalho de Melo<acme@xxxxxxxxxx>

:040000 040000 64d65944c9081dfd9ace65dbc19fca655cbdc708 4f0e86ab85314ba68f2295ae1e599f3bb5ab9484 M tools


Thanks,
Namhyung


It happened because I used old kernel version that isn't aware of the exclude_guest bit. So the check on attr->__reserved_1 in core.c::perf_copy_attr() failed and then ended up seeing EINVAL at perf_evsel__open().

So I think it should be handled in the same way of handling sample_id_all bit in perf record and top if we want to set perf_guest to false by default. I'll send patches for them soon.

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