[lkml]   [2020]   [Oct]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subject[PATCH 0/4] drivers core: Introduce CPU type sysfs interface
Hybrid CPU topologies combine processors with more than one type of
micro-architecture. Hence, it is possible that individual CPUs support
slightly different features (e.g., performance counters) and different
performance properties. Thus, there may be user space entities interested
in knowing the topology of the system based on the types of available

Currently, there exists an interface for the CPU capacity (/sys/devices/
system/cpu/cpuX/cpu_capacity). However, CPU capacity does not always map
to CPU types (by the way, I will submit a separate series to bring such
interface to x86).

This series proposes the new interface /sys/devices/system/cpu/types
which, in hybrid parts, creates a subdirectory for each type of CPU.
Each subdirectory contains a CPU list and a CPU map that user space can

Patch 1 of the series proposes the generic interface, with hooks
that architectures can override to suit their needs. The three patches
patches implement such interface for x86 (as per request from Boris,
I pulled patch 2 from a separate submission [1]).

Thanks and BR,


Ricardo Neri (4):
drivers core: Introduce CPU type sysfs interface
x86/cpu: Describe hybrid CPUs in cpuinfo_x86
x86/cpu/intel: Add function to get name of hybrid CPU types
x86/cpu/topology: Implement the CPU type sysfs interface

.../ABI/testing/sysfs-devices-system-cpu | 13 ++
arch/x86/include/asm/intel-family.h | 4 +
arch/x86/include/asm/processor.h | 13 ++
arch/x86/include/asm/topology.h | 2 +
arch/x86/kernel/cpu/common.c | 3 +
arch/x86/kernel/cpu/cpu.h | 3 +
arch/x86/kernel/cpu/intel.c | 23 ++
arch/x86/kernel/cpu/topology.c | 23 ++
drivers/base/cpu.c | 214 ++++++++++++++++++
include/linux/cpu.h | 12 +
include/linux/cpuhotplug.h | 1 +
11 files changed, 311 insertions(+)


 \ /
  Last update: 2020-10-03 03:16    [W:0.211 / U:0.076 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site