perf/x86: Use extended offcore mask on Haswell
authorAndi Kleen <ak@linux.intel.com>
Thu, 31 Jul 2014 21:05:22 +0000 (14:05 -0700)
committerIngo Molnar <mingo@kernel.org>
Wed, 13 Aug 2014 05:51:10 +0000 (07:51 +0200)
commit36bbb2f2988a29cdc3f8e0c93478795934553454
tree04a4bf8592453565fe507df5f2b528452bc0ab3d
parent17a6034555c601331311d31beb395f6665056b3e
perf/x86: Use extended offcore mask on Haswell

HSW-EP has a larger offcore mask than the client Haswell CPUs.
It is the same mask as on Sandy/IvyBridge-EP. All of
Haswell was using the client mask, so some bits were missing.

On the client parts some bits were also missing compared
to Sandy/IvyBridge, in particular the bits to match on a L4
cache hit.

The Haswell core in both client and server incarnations
accepts the same bits (but some are nops), so we can use
the same mask.

So use the snbep extended mask, which is a superset of the
client and the server, for all of Haswell.

This allows specifying a number of extra offcore events, like
for example for HSW-EP.

% perf stat -e cpu/event=0xb7,umask=0x1,offcore_rsp=0x3fffc00100,name=offcore_response_pf_l3_rfo_l3_miss_any_response/ true

which were <not supported> before.

Signed-off-by: Andi Kleen <ak@linux.intel.com>
Reviewed-by: eranian@google.com
Signed-off-by: Peter Zijlstra <peterz@infradead.org>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
Link: http://lkml.kernel.org/r/1406840722-25416-1-git-send-email-andi@firstfloor.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
arch/x86/kernel/cpu/perf_event_intel.c