* [RESEND PATCH v1] x86/cpu/topology: Consolidate AMD and Hygon cases in parse_topology()
@ 2026-03-23 8:07 Wei Wang
2026-03-23 14:29 ` Yongwei Xu
0 siblings, 1 reply; 2+ messages in thread
From: Wei Wang @ 2026-03-23 8:07 UTC (permalink / raw)
To: bp, tglx, mingo, ludloff, xuyongwei, dave.hansen, pawan.kumar.gupta
Cc: x86, linux-kernel, wei.w.wang
Merge the two separate switch cases for AMD and Hygon as they share the
common cpu_parse_topology_amd().
Also drop the IS_ENABLED(CONFIG_CPU_SUP_AMD/HYGON) guards, because
1) they are dead code: when a vendor's CONFIG_CPU_SUP_* is disabled, its
vendor detection code (in amd.c / hygon.c) is not compiled, so
x86_vendor will never be set to X86_VENDOR_AMD / X86_VENDOR_HYGON,
instead it will default to X86_VENDOR_UNKNOWN and those switch cases
are unreachable.
2) topology_amd.o is always built (obj-y), so cpu_parse_topology_amd() is
always available regardless of CPU_SUP_* configuration.
Signed-off-by: Wei Wang <wei.w.wang@hotmail.com>
Tested-by: Yongwei Xu <xuyongwei@open-hieco.net>
---
RESEND changes
- Add Tested-by from Yongwei
- Rebase to 7.0.0-rc4
arch/x86/kernel/cpu/topology_common.c | 8 ++------
1 file changed, 2 insertions(+), 6 deletions(-)
diff --git a/arch/x86/kernel/cpu/topology_common.c b/arch/x86/kernel/cpu/topology_common.c
index 71625795d711..d0d79d5b8eb9 100644
--- a/arch/x86/kernel/cpu/topology_common.c
+++ b/arch/x86/kernel/cpu/topology_common.c
@@ -157,8 +157,8 @@ static void parse_topology(struct topo_scan *tscan, bool early)
switch (c->x86_vendor) {
case X86_VENDOR_AMD:
- if (IS_ENABLED(CONFIG_CPU_SUP_AMD))
- cpu_parse_topology_amd(tscan);
+ case X86_VENDOR_HYGON:
+ cpu_parse_topology_amd(tscan);
break;
case X86_VENDOR_CENTAUR:
case X86_VENDOR_ZHAOXIN:
@@ -170,10 +170,6 @@ static void parse_topology(struct topo_scan *tscan, bool early)
if (c->cpuid_level >= 0x1a)
c->topo.cpu_type = cpuid_eax(0x1a);
break;
- case X86_VENDOR_HYGON:
- if (IS_ENABLED(CONFIG_CPU_SUP_HYGON))
- cpu_parse_topology_amd(tscan);
- break;
}
}
base-commit: 785f0eb2f85decbe7c1ef9ae922931f0194ffc2e
--
2.51.0
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [RESEND PATCH v1] x86/cpu/topology: Consolidate AMD and Hygon cases in parse_topology()
2026-03-23 8:07 [RESEND PATCH v1] x86/cpu/topology: Consolidate AMD and Hygon cases in parse_topology() Wei Wang
@ 2026-03-23 14:29 ` Yongwei Xu
0 siblings, 0 replies; 2+ messages in thread
From: Yongwei Xu @ 2026-03-23 14:29 UTC (permalink / raw)
To: Wei Wang, bp, tglx, mingo, ludloff, dave.hansen, pawan.kumar.gupta
Cc: x86, linux-kernel
On 3/23/2026 4:07 PM, Wei Wang wrote:
> Merge the two separate switch cases for AMD and Hygon as they share the
> common cpu_parse_topology_amd().
>
> Also drop the IS_ENABLED(CONFIG_CPU_SUP_AMD/HYGON) guards, because
> 1) they are dead code: when a vendor's CONFIG_CPU_SUP_* is disabled, its
> vendor detection code (in amd.c / hygon.c) is not compiled, so
> x86_vendor will never be set to X86_VENDOR_AMD / X86_VENDOR_HYGON,
> instead it will default to X86_VENDOR_UNKNOWN and those switch cases
> are unreachable.
> 2) topology_amd.o is always built (obj-y), so cpu_parse_topology_amd() is
> always available regardless of CPU_SUP_* configuration.
>
> Signed-off-by: Wei Wang <wei.w.wang@hotmail.com>
> Tested-by: Yongwei Xu <xuyongwei@open-hieco.net>
Tested on AMD Genoa and Hygon 7447v servers. Kernel builds and boots
normally, and no regressions found!
> ---
> RESEND changes
> - Add Tested-by from Yongwei
> - Rebase to 7.0.0-rc4
>
> arch/x86/kernel/cpu/topology_common.c | 8 ++------
> 1 file changed, 2 insertions(+), 6 deletions(-)
>
> diff --git a/arch/x86/kernel/cpu/topology_common.c b/arch/x86/kernel/cpu/topology_common.c
> index 71625795d711..d0d79d5b8eb9 100644
> --- a/arch/x86/kernel/cpu/topology_common.c
> +++ b/arch/x86/kernel/cpu/topology_common.c
> @@ -157,8 +157,8 @@ static void parse_topology(struct topo_scan *tscan, bool early)
>
> switch (c->x86_vendor) {
> case X86_VENDOR_AMD:
> - if (IS_ENABLED(CONFIG_CPU_SUP_AMD))
> - cpu_parse_topology_amd(tscan);
> + case X86_VENDOR_HYGON:
> + cpu_parse_topology_amd(tscan);
> break;
> case X86_VENDOR_CENTAUR:
> case X86_VENDOR_ZHAOXIN:
> @@ -170,10 +170,6 @@ static void parse_topology(struct topo_scan *tscan, bool early)
> if (c->cpuid_level >= 0x1a)
> c->topo.cpu_type = cpuid_eax(0x1a);
> break;
> - case X86_VENDOR_HYGON:
> - if (IS_ENABLED(CONFIG_CPU_SUP_HYGON))
> - cpu_parse_topology_amd(tscan);
> - break;
> }
> }
>
>
> base-commit: 785f0eb2f85decbe7c1ef9ae922931f0194ffc2e
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-03-23 14:29 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-03-23 8:07 [RESEND PATCH v1] x86/cpu/topology: Consolidate AMD and Hygon cases in parse_topology() Wei Wang
2026-03-23 14:29 ` Yongwei Xu
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®