[PATCH 0/19] v6 multi-die/package topology support

From: Len Brown
Date: Mon May 13 2019 - 14:00:53 EST



This patch series does 4 things.

1. Parse the new CPUID.1F leaf to discover multi-die/package topology

2. Export multi-die topology inside the kernel

3. Update 4 places (coretemp, pkgtemp, rapl, perf) that that need to know
the difference between die and package-scope MSR.

4. Export multi-die topology to user-space via sysfs

These changes should have no impact on cache topology,
NUMA topology, Linux scheduler, or system performance.

These topology changes primarily impact parts of the kernel
and some applications that care about package MSR scope.
Also, some software is licensed per package, and other tools,
such as benchmark reporting software sometimes cares about packages.

Changes since v5:

The patch numbers have decremented by 3, since the first 3 patches
in the original series are now upstream.

The last two "Cosmetic rename" patches have been replaced with
those by Kan, who did a more thorough variable rename than I had
originally proposed.


[PATCH 18/19] perf/x86/intel/uncore: Cosmetic renames in response to multi-die/pkg support
[PATCH 19/19] perf/x86/intel/rapl: Cosmetic rename internal variables in response to multi-die/pkg support

I'm not aware of any outstanding feedback on this series,
functional or cosmetic.

thanks,
Len Brown, Intel Opensource Technology Center

--------------
The following changes since commit a13f0655503a4a89df67fdc7cac6a7810795d4b3:

Merge tag 'iommu-updates-v5.2' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/joro/iommu (2019-05-13 09:23:18 -0400)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux.git x86

for you to fetch changes up to 0ddb97e121397d37933233da303556141814fa47:

perf/x86/intel/rapl: Cosmetic rename internal variables in response to multi-die/pkg support (2019-05-13 13:41:50 -0400)

----------------------------------------------------------------
Kan Liang (5):
perf/x86/intel/uncore: Support multi-die/package
perf/x86/intel/rapl: Support multi-die/package
perf/x86/intel/cstate: Support multi-die/package
perf/x86/intel/uncore: Cosmetic renames in response to multi-die/pkg support
perf/x86/intel/rapl: Cosmetic rename internal variables in response to multi-die/pkg support

Len Brown (9):
x86 topology: Add CPUID.1F multi-die/package support
x86 topology: Create topology_max_die_per_package()
cpu topology: Export die_id
x86 topology: Define topology_die_id()
x86 topology: Define topology_logical_die_id()
topology: Create package_cpus sysfs attribute
topology: Create core_cpus and die_cpus sysfs attributes
thermal/x86_pkg_temp_thermal: Cosmetic: Rename internal variables to zones from packages
hwmon/coretemp: Cosmetic: Rename internal variables to zones from packages

Zhang Rui (5):
powercap/intel_rapl: Simplify rapl_find_package()
powercap/intel_rapl: Support multi-die/package
thermal/x86_pkg_temp_thermal: Support multi-die/package
powercap/intel_rapl: Update RAPL domain name and debug messages
hwmon/coretemp: Support multi-die/package

Documentation/cputopology.txt | 48 ++++++---
Documentation/x86/topology.rst | 4 +
arch/x86/events/intel/cstate.c | 14 ++-
arch/x86/events/intel/rapl.c | 20 ++--
arch/x86/events/intel/uncore.c | 80 +++++++--------
arch/x86/events/intel/uncore.h | 4 +-
arch/x86/events/intel/uncore_snbep.c | 4 +-
arch/x86/include/asm/processor.h | 4 +-
arch/x86/include/asm/smp.h | 1 +
arch/x86/include/asm/topology.h | 17 ++++
arch/x86/kernel/cpu/common.c | 1 +
arch/x86/kernel/cpu/topology.c | 88 +++++++++++++----
arch/x86/kernel/smpboot.c | 69 +++++++++++++
arch/x86/xen/smp_pv.c | 1 +
drivers/base/topology.c | 22 +++++
drivers/hwmon/coretemp.c | 36 +++----
drivers/powercap/intel_rapl.c | 75 +++++++-------
drivers/thermal/intel/x86_pkg_temp_thermal.c | 142 ++++++++++++++-------------
include/linux/topology.h | 6 ++
19 files changed, 422 insertions(+), 214 deletions(-)