On Thu, Mar 31, 2016 at 02:23:20AM -0700, tip-bot for Peter Zijlstra wrote: > Commit-ID: 26657848502b78474a5f17f9ce2ae6dc8d8d6262 > Gitweb: http://git.kernel.org/tip/26657848502b78474a5f17f9ce2ae6dc8d8d6262 > Author: Peter Zijlstra <peterz@xxxxxxxxxxxxx> > AuthorDate: Tue, 22 Mar 2016 22:09:18 +0100 > Committer: Ingo Molnar <mingo@xxxxxxxxxx> > CommitDate: Thu, 31 Mar 2016 10:30:41 +0200 > > perf/core: Verify we have a single perf_hw_context PMU > > There should (and can) only be a single PMU for perf_hw_context > events. > > This is because of how we schedule events: once a hardware event fails to > schedule (the PMU is 'full') we stop trying to add more. The trivial > 'fix' would break the Round-Robin scheduling we do. This triggered on AMD machines.. --- Subject: perf,amd: Do not register a task ctx for uncore PMUs Uncore PMUs are per node, they cannot have per-task counters. Reported-by: Borislav Petkov <bp@xxxxxxx> Reported-by: Ingo Molnar <mingo@xxxxxxxxxx> Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx> --- arch/x86/events/amd/uncore.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/arch/x86/events/amd/uncore.c b/arch/x86/events/amd/uncore.c index 3db9569..98ac573 100644 --- a/arch/x86/events/amd/uncore.c +++ b/arch/x86/events/amd/uncore.c @@ -263,6 +263,7 @@ static const struct attribute_group *amd_uncore_attr_groups[] = { }; static struct pmu amd_nb_pmu = { + .task_ctx_nr = perf_invalid_context, .attr_groups = amd_uncore_attr_groups, .name = "amd_nb", .event_init = amd_uncore_event_init, @@ -274,6 +275,7 @@ static struct pmu amd_nb_pmu = { }; static struct pmu amd_l2_pmu = { + .task_ctx_nr = perf_invalid_context, .attr_groups = amd_uncore_attr_groups, .name = "amd_l2", .event_init = amd_uncore_event_init, -- To unsubscribe from this list: send the line "unsubscribe linux-tip-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
![]() |