[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20251028143631.GA468145@yaz-khff2.amd.com>
Date: Tue, 28 Oct 2025 10:36:31 -0400
From: Yazen Ghannam <yazen.ghannam@....com>
To: Mario Limonciello <mario.limonciello@....com>
Cc: Michal Pecio <michal.pecio@...il.com>, x86@...nel.org,
regressions@...ts.linux.dev, Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...hat.com>, Borislav Petkov <bp@...en8.de>,
Eric DeVolder <eric.devolder@...cle.com>,
linux-kernel@...r.kernel.org
Subject: Re: AMD topology broken on various 754/AM2+/AM3/AM3+ systems causes
NB/EDAC/GART regression since 6.14
On Mon, Oct 27, 2025 at 11:18:38AM -0500, Mario Limonciello wrote:
> On 10/24/25 4:32 PM, Yazen Ghannam wrote:
[...]
> > +/*
> > + * Some older BIOSes include extra entries in MADT.
> > + * Do some vendor-specific checks to ignore them.
> > + */
> > +static bool ignore_extra_apic_entry(u32 apic_id)
> > +{
> > + u32 pkgid = topo_apicid(apic_id, TOPO_PKG_DOMAIN);
> > + struct cpuinfo_x86 *c = &boot_cpu_data;
> > +
> > + /* Allow "physically not possible" cases if in a guest. */
> > + if (!hypervisor_is_type(X86_HYPER_NATIVE))
> > + return false;
> > +
> > + /* This model only supports 8 threads in a package. */
> > + if (c->x86_vendor == X86_VENDOR_INTEL &&
> > + c->x86 == 0x6 && c->x86_model == 0x2d) {
> > + if (topo_unit_count(pkgid, TOPO_PKG_DOMAIN, phys_cpu_present_map) >= 8)
> > + goto reject;
> > + }
> > +
> > + /*
> > + * Various older models have extra entries. A common trait is that the
> > + * package ID derived from the APIC ID would be more than was ever supported.
> > + */
> > + if (c->x86_vendor == X86_VENDOR_AMD && c->x86 < 0x17) {
>
> Maybe look for lack of X86_FEATURE_ZEN instead?
Thanks. Yep, good idea.
>
> > + pkgid >>= x86_topo_system.dom_shifts[TOPO_PKG_DOMAIN - 1];
> > +
> > + if (pkgid >= 8)
> > + goto reject;
> > + }
> > +
> > + return false;
> > +
> > +reject:
> > + pr_info_once("Ignoring hot-pluggable APIC ID %x.\n", apic_id);
> > + topo_info.nr_rejected_cpus++;
> > + return true;
> > +}
> > +
Michal, does this patch resolve the issue on you systems?
Thanks,
Yazen
Powered by blists - more mailing lists