[tip: x86/cpu] x86/cpu: Remove redundant cpu_detect_cache_sizes() call

From: tip-bot2 for Tony W Wang-oc
Date: Mon Jan 20 2020 - 10:39:45 EST


The following commit has been merged into the x86/cpu branch of tip:

Commit-ID: 283bab9809786cf41798512f5c1e97f4b679ba96
Gitweb: https://git.kernel.org/tip/283bab9809786cf41798512f5c1e97f4b679ba96
Author: Tony W Wang-oc <TonyWWang-oc@xxxxxxxxxxx>
AuthorDate: Wed, 15 Jan 2020 16:00:57 +08:00
Committer: Borislav Petkov <bp@xxxxxxx>
CommitterDate: Mon, 20 Jan 2020 16:32:35 +01:00

x86/cpu: Remove redundant cpu_detect_cache_sizes() call

Both functions call init_intel_cacheinfo() which computes L2 and L3 cache
sizes from CPUID(4). But then they also call cpu_detect_cache_sizes() a
bit later which computes ->x86_tlbsize and L2 size from CPUID(80000006).

However, the latter call is not needed because

- on these CPUs, CPUID(80000006).EBX for ->x86_tlbsize is reserved

- CPUID(80000006).ECX for the L2 size has the same result as CPUID(4)

Therefore, remove the latter call to simplify the code.

[ bp: Rewrite commit message. ]

Signed-off-by: Tony W Wang-oc <TonyWWang-oc@xxxxxxxxxxx>
Signed-off-by: Borislav Petkov <bp@xxxxxxx>
Link: https://lkml.kernel.org/r/1579075257-6985-1-git-send-email-TonyWWang-oc@xxxxxxxxxxx
---
arch/x86/kernel/cpu/centaur.c | 2 --
arch/x86/kernel/cpu/zhaoxin.c | 2 --
2 files changed, 4 deletions(-)

diff --git a/arch/x86/kernel/cpu/centaur.c b/arch/x86/kernel/cpu/centaur.c
index 02d99fe..4267925 100644
--- a/arch/x86/kernel/cpu/centaur.c
+++ b/arch/x86/kernel/cpu/centaur.c
@@ -64,8 +64,6 @@ static void init_c3(struct cpuinfo_x86 *c)
c->x86_cache_alignment = c->x86_clflush_size * 2;
set_cpu_cap(c, X86_FEATURE_REP_GOOD);
}
-
- cpu_detect_cache_sizes(c);
}

enum {
diff --git a/arch/x86/kernel/cpu/zhaoxin.c b/arch/x86/kernel/cpu/zhaoxin.c
index 6b2d3b0..df1358b 100644
--- a/arch/x86/kernel/cpu/zhaoxin.c
+++ b/arch/x86/kernel/cpu/zhaoxin.c
@@ -51,8 +51,6 @@ static void init_zhaoxin_cap(struct cpuinfo_x86 *c)

if (c->x86 >= 0x6)
set_cpu_cap(c, X86_FEATURE_REP_GOOD);
-
- cpu_detect_cache_sizes(c);
}

static void early_init_zhaoxin(struct cpuinfo_x86 *c)