Re: [BUG(?)] perf_events: combining multiple tracepoint events intoa group produces no counts on member events
From: Corey Ashford
Date: Wed Dec 01 2010 - 14:23:20 EST
Thanks for your reply, Peter.
On 12/01/2010 03:46 AM, Peter Zijlstra wrote:
On Tue, 2010-11-30 at 17:00 -0800, Corey Ashford wrote:
Hi,
I'm not sure that what I'm seeing is a bug, or was something intentional.
If I place multiple tracepoint events into a group and measure counts of
these events on a process, I get no counts for the tracepoint events
other than the group leader.
Is this expected behavior?
It's not clear to me why this should be the case; grouping shouldn't
have any ill effects on tracepoint events, from my understanding.
I noticed this because my private version of the perf tool has the event
group patch https://lkml.org/lkml/2010/11/24/584 as well as the patch
which fixes the parsing of multiple tracepoint events in the same -e
switch: https://lkml.org/lkml/2010/11/30/460
When I dig into the code a bit, I find that each event opens
successfully, so that's not the problem. If I disable the grouping,
then I get counts for all of the tracepoint events.
Hrm,.. definitely not expected. I'll try and look into it, but I'm a bit
over-committed atm.
Also, I've started a rewrite of the whole tracepoint<-> perf
interaction:
http://lkml.org/lkml/2010/11/23/147
Could you see if that cures your problem?
I've had some trouble getting recent kernels to boot on my Power5
machine, but I might be able to try it on my laptop.
Another thing to test, does the same hold true for regular software
events? tracepoints and software events share a lot of infrastructure.
I just tried "perf stat -e context-switches,faults ..." on both my
laptop (running 2.6.35), and on my Power5 machine (running 2.6.33) and I
get the same behavior when software events are grouped, e.g.:
% ./perf stat -e context-switches,faults ~/load 1000
Performance counter stats for '/home/corey/load 1000':
240 context-switches
<not counted> page-faults
2.382022393 seconds time elapsed
So I suppose that points to a common flaw in the tracepoint and software
event logic.
With that in mind, would it still make sense to try out your tracepoint
patch?
- Corey
--
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/