]> www.infradead.org Git - users/dwmw2/linux.git/commit
x86/cacheinfo: Delete global num_cache_leaves
authorRicardo Neri <ricardo.neri-calderon@linux.intel.com>
Thu, 28 Nov 2024 00:22:47 +0000 (16:22 -0800)
committerBorislav Petkov (AMD) <bp@alien8.de>
Fri, 6 Dec 2024 12:13:36 +0000 (13:13 +0100)
commit9677be09e5e4fbe48aeccb06ae3063c5eba331c3
tree9e9735ccba27a1b52093c49cb7d3e308157670b4
parentb3fce429a1e030b50c1c91351d69b8667eef627b
x86/cacheinfo: Delete global num_cache_leaves

Linux remembers cpu_cachinfo::num_leaves per CPU, but x86 initializes all
CPUs from the same global "num_cache_leaves".

This is erroneous on systems such as Meteor Lake, where each CPU has a
distinct num_leaves value. Delete the global "num_cache_leaves" and
initialize num_leaves on each CPU.

init_cache_level() no longer needs to set num_leaves. Also, it never had to
set num_levels as it is unnecessary in x86. Keep checking for zero cache
leaves. Such condition indicates a bug.

  [ bp: Cleanup. ]

Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Cc: stable@vger.kernel.org # 6.3+
Link: https://lore.kernel.org/r/20241128002247.26726-3-ricardo.neri-calderon@linux.intel.com
arch/x86/kernel/cpu/cacheinfo.c