Re: [PATCH v2 4/5] x86/cpu: Add CPU type to struct cpuinfo_topology

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Oct 22, 2024 at 11:13:00AM -0500, Mario Limonciello wrote:
> > This makes me feel a _bit_ uneasy.  0x20 here really does mean "Atom
> > microarchitecture" and 0x40 means "Core microarchitecture".
> > 
> > We want to encourage folks to use this new ABI when they want to find
> > the fastest core to run on.  But we don't want them to use it to bind to
> > a CPU and then deploy Atom-specific optimizations.
> > 
> > We *also* don't want the in-kernel code to do be doing things like:
> > 
> > 	if (get_intel_cpu_type() == TOPO_CPU_TYPE_EFFICIENCY)
> > 		setup_force_cpu_bug(FOO);
> > 
> > That would fall over if Intel ever mixed fast and slow core types with
> > the same microarchitecture, which is what AMD is doing today.
> > 
> > Having:
> > 
> > 	TOPO_CPU_TYPE_EFFICIENCY, and
> > 	TOPO_CPU_TYPE_PERFORMANCE
> > 
> > is totally fine in generic code.  But we also need to preserve the:
> > 
> > 	TOPO_HW_CPU_TYPE_INTEL_ATOM
> > 	TOPO_HW_CPU_TYPE_INTEL_CORE
> > 
> > values also for use in vendor-specific code.
> 
> What you're suggesting is to keep an enum in the intel.c code and any code
> that needs to match atom vs core can directly use
> 
> c->topo.intel_type == TOPO_HW_CPU_TYPE_INTEL_ATOM

To be able to match ATOM and CORE in the affected processor table, the
enums need to be defined in a way that they can be used in the common code.
Specially for !CONFIG_CPU_SUP_INTEL case.




[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]
  Powered by Linux