diff options
author | Peter Zijlstra <a.p.zijlstra@chello.nl> | 2011-02-15 22:26:07 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2011-02-16 13:25:29 +0100 |
commit | 4fe757dd48a9e95e1a071291f15dda5421dacb66 (patch) | |
tree | 9981eaf986d477d096cdb0388e0f95a80eeb2c38 /kernel/trace | |
parent | 7d44ec193d95416d1342cdd86392a1eeb7461186 (diff) |
perf: Fix throttle logic
It was possible to call pmu::start() on an already running event. In
particular this lead so some wreckage as the hrtimer events would
re-initialize active timers.
This was due to throttled events being activated again by scheduling.
Scheduling in a context would add and force start events, resulting in
running events with a possible throttle status. The next tick to hit
that task will then try to unthrottle the event and call ->start() on
an already running event.
Reported-by: Jeff Moyer <jmoyer@redhat.com>
Cc: <stable@kernel.org>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
LKML-Reference: <new-submission>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel/trace')
0 files changed, 0 insertions, 0 deletions