Re: [PATCH] perf_counter: Start counting time enabled when group leader gets enabled
- From: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
- Date: Tue, 25 Aug 2009 09:21:28 +0200
On Tue, 2009-08-25 at 15:17 +1000, Paul Mackerras wrote:
Currently, if a group is created where the group leader is initially
disabled but a non-leader member is initially enabled, and then the
leader is subsequently enabled some time later, the time_enabled for
the non-leader member will reflect the whole time since it was created,
not just the time since the leader was enabled. This is incorrect,
because all of the members are effectively disabled while the leader
is disabled, since none of the members can go on the PMU if the leader
can't.
Thus we have to update the ->tstamp_enabled for all the enabled group
members when a group leader is enabled, so that the time_enabled
computation only counts the time since the leader was enabled.
Similarly, when disabling a group leader we have to update the
time_enabled and time_running for all of the group members.
Also, in update_counter_times, we have to treat a counter whose group
leader is disabled as being disabled.
Reported-by: Stephane Eranian <eranian@xxxxxxxxxxxxxx>
Signed-off-by: Paul Mackerras <paulus@xxxxxxxxx>
Looks good, thanks Paul!
--
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/
- References:
- perf_counters issue with enable_on_exec
- From: stephane eranian
- Re: perf_counters issue with enable_on_exec
- From: Peter Zijlstra
- Re: perf_counters issue with enable_on_exec
- From: stephane eranian
- [PATCH] perf_counter: Start counting time enabled when group leader gets enabled
- From: Paul Mackerras
- perf_counters issue with enable_on_exec
- Prev by Date: WARNING: kmemcheck: Caught 32-bit read from uninitialized memory (f6f6e1a4), by kmemleak's scan_block()
- Next by Date: Re: [PATCH 0/2] eventfd: new EFD_STATE flag
- Previous by thread: [PATCH] perf_counter: Start counting time enabled when group leader gets enabled
- Next by thread: [tip:perfcounters/core] perf_counter: Start counting time enabled when group leader gets enabled
- Index(es):
Relevant Pages
|