[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <37D7C6CF3E00A74B8858931C1DB2F07750CA4697@SHSMSX103.ccr.corp.intel.com>
Date: Wed, 30 Nov 2016 14:45:09 +0000
From: "Liang, Kan" <kan.liang@...el.com>
To: Jiri Olsa <jolsa@...hat.com>
CC: Andi Kleen <andi@...stfloor.org>,
Peter Zijlstra <peterz@...radead.org>,
Jiri Olsa <jolsa@...nel.org>,
lkml <linux-kernel@...r.kernel.org>,
"Ingo Molnar" <mingo@...nel.org>,
Michael Petlan <mpetlan@...hat.com>
Subject: RE: [RFC] perf/x86/intel/uncore: pmu->type->single_fixed question
> hi,
> I'm trying to find out some documentation background for this part of
> uncore code:
>
> ---
> static int uncore_pmu_event_init(struct perf_event *event) {
> ...
> if (event->attr.config == UNCORE_FIXED_EVENT) {
> /* no fixed counter */
> if (!pmu->type->fixed_ctl)
> return -EINVAL;
> /*
> * if there is only one fixed counter, only the first pmu
> * can access the fixed counter
> */
> if (pmu->type->single_fixed && pmu->pmu_idx > 0)
> return -EINVAL;
> ...
> ---
>
> that for some uncore types (those with pmu->type->single_fixed) only the
> first pmu (code_id == 0) will allow to touch the clocktick event
>
> other cores boxes will not allow to open clocktick event, eventhough it's
> announced via /sys/../events/..
>
> I'm probably missing some HW logic of specific boxes that would explain
> that, but I can't find it.
The client uncore has a standalone clocktick fixed counter. It doesn't belong
to any boxes, which is different from server uncore.
But client and server uncore share the same uncore_pmu_event_init.
So it forces that only the first box can access the fixed counter.
Maybe we should create a clocktick box for client uncore to fix it.
You can find the fixed counter information from 18.11.6 in latest
SDM (Order Number: 325384-060US).
There should be a Skylake client uncore document published somewhere.
But I cannot find it from Google. Let me ask around.
Thanks,
Kan
Powered by blists - more mailing lists