diff options
| author | Peter Zijlstra <[email protected]> | 2016-07-07 17:37:52 +0000 |
|---|---|---|
| committer | Ingo Molnar <[email protected]> | 2016-08-10 11:13:27 +0000 |
| commit | 3e2c1a67d616dbc1034bc39448cd5f4aa3bd3cca (patch) | |
| tree | d7724d36646c8d2614a49a59518254abdaf0fa71 /tools/perf/util/scripting-engines/trace-event-perl.c | |
| parent | perf/x86/intel: Remove redundant test from intel_pmu_lbr_add() (diff) | |
| download | kernel-3e2c1a67d616dbc1034bc39448cd5f4aa3bd3cca.tar.gz kernel-3e2c1a67d616dbc1034bc39448cd5f4aa3bd3cca.zip | |
perf/x86/intel: Clean up LBR state tracking
The lbr_context logic confused me; it appears to me to try and do the
same thing the pmu::sched_task() callback does now, but limited to
per-task events.
So rip it out. Afaict this should also improve performance, because I
think the current code can end up doing lbr_reset() twice, once from
the pmu::add() and then again from pmu::sched_task(), and MSR writes
(all 3*16 of them) are expensive!!
While thinking through the cases that need the reset it occured to me
the first install of an event in an active context needs to reset the
LBR (who knows what crap is in there), but detecting this case is
somewhat hard.
Signed-off-by: Peter Zijlstra (Intel) <[email protected]>
Cc: Alexander Shishkin <[email protected]>
Cc: Arnaldo Carvalho de Melo <[email protected]>
Cc: Jiri Olsa <[email protected]>
Cc: Linus Torvalds <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Stephane Eranian <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: Vince Weaver <[email protected]>
Cc: [email protected]
Signed-off-by: Ingo Molnar <[email protected]>
Diffstat (limited to 'tools/perf/util/scripting-engines/trace-event-perl.c')
0 files changed, 0 insertions, 0 deletions
