lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.20.1610071549330.19804@nanos>
Date:   Fri, 7 Oct 2016 15:55:13 +0200 (CEST)
From:   Thomas Gleixner <tglx@...utronix.de>
To:     Markus Trippelsdorf <markus@...ppelsdorf.de>
cc:     One Thousand Gnomes <gnomes@...rguk.ukuu.org.uk>,
        Gu Zheng <guz.fnst@...fujitsu.com>, linux-acpi@...r.kernel.org,
        linux-kernel@...r.kernel.org,
        Dou Liyang <douly.fnst@...fujitsu.com>
Subject: Re: Bogus "APIC: NR_CPUS/possible_cpus limit of 4 reached"
 messages

On Fri, 7 Oct 2016, Markus Trippelsdorf wrote:
> On 2016.10.06 at 13:52 +0200, Markus Trippelsdorf wrote:
> > On 2016.10.06 at 12:48 +0100, One Thousand Gnomes wrote:
> > > On Thu, 6 Oct 2016 13:27:37 +0200
> > > Markus Trippelsdorf <markus@...ppelsdorf.de> wrote:
> > > 
> > > > On current trunk I get during boot:
> > > > 
> > > > [    0.000000] APIC: NR_CPUS/possible_cpus limit of 4 reached.  Processor 4/0x84 ignored.
> > > > [    0.000000] APIC: NR_CPUS/possible_cpus limit of 4 reached.  Processor 5/0x85 ignored.
> > > > 
> > > > I don't think these messages make much sense on a 4-core machine.
> > > > 
> > > 
> > > Four cores with or without hyperthreading ?
> > 
> > Without. This is a rather old AMD machine (AMD Phenom II X4 955).

That's due to the recent cpuid -> nodeid changes. The patch below should
fix it.

Thanks,

	tglx

diff --git a/arch/x86/kernel/apic/apic.c b/arch/x86/kernel/apic/apic.c
index f266b8a92a9e..88c657b057e2 100644
--- a/arch/x86/kernel/apic/apic.c
+++ b/arch/x86/kernel/apic/apic.c
@@ -2128,9 +2128,11 @@ int __generic_processor_info(int apicid, int version, bool enabled)
 	if (num_processors >= nr_cpu_ids) {
 		int thiscpu = max + disabled_cpus;
 
-		pr_warning(
-			"APIC: NR_CPUS/possible_cpus limit of %i reached."
-			"  Processor %d/0x%x ignored.\n", max, thiscpu, apicid);
+		if (enabled) {
+			pr_warning("APIC: NR_CPUS/possible_cpus limit of %i "
+				   "reached. Processor %d/0x%x ignored.\n",
+				   max, thiscpu, apicid);
+		}
 
 		disabled_cpus++;
 		return -EINVAL;

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ