]> git.baikalelectronics.ru Git - kernel.git/commit
perf/x86/amd/uncore: Get correct number of cores sharing last level cache
authorJanakarajan Natarajan <Janakarajan.Natarajan@amd.com>
Wed, 14 Jun 2017 16:26:58 +0000 (11:26 -0500)
committerIngo Molnar <mingo@kernel.org>
Thu, 10 Aug 2017 10:08:39 +0000 (12:08 +0200)
commit85628151983f637cc59165aa61147dea4170fadc
tree7ae9276dad75d580645bdefb3f39c706a0c10465
parent390e6b8fbd3f0a45cdd9262d32eb8eb1618902d6
perf/x86/amd/uncore: Get correct number of cores sharing last level cache

In Family 17h, the number of cores sharing a cache level is obtained
from the Cache Properties CPUID leaf (0x8000001d) by passing in the
cache level in ECX. In prior families, a cache level of 2 was used to
determine this information.

To get the right information, irrespective of Family, iterate over
the cache levels using CPUID 0x8000001d. The last level cache is the
last value to return a non-zero value in EAX.

Signed-off-by: Janakarajan Natarajan <Janakarajan.Natarajan@amd.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Borislav Petkov <bp@suse.de>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/5ab569025b39cdfaeca55b571d78c0fc800bdb69.1497452002.git.Janakarajan.Natarajan@amd.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
arch/x86/events/amd/uncore.c