All of lore.kernel.org
 help / color / mirror / Atom feed
From: William Lee Irwin III <wli@holomorphy.com>
To: Andrew Theurer <habanero@us.ibm.com>,
	Dave Hansen <haveblue@us.ibm.com>,
	linux-kernel <linux-kernel@vger.kernel.org>,
	Andrew Morton <akpm@osdl.org>,
	"Martin J. Bligh" <mbligh@aracnet.com>
Subject: Re: CPU boot problem on 2.6.0-test3-bk8
Date: Thu, 21 Aug 2003 15:17:44 -0700	[thread overview]
Message-ID: <20030821221744.GK4306@holomorphy.com> (raw)
In-Reply-To: <20030821213350.GJ4306@holomorphy.com>

On Thu, Aug 21, 2003 at 12:02:02PM -0500, Andrew Theurer wrote:
>> smp_boot_cpus() bit: 80
>> Booting processor 16/114 eip 2000
>> Not responding.
>> Unmapping cpu 16 from all nodes
>> CPU #114 not responding - cannot use it.

On Thu, Aug 21, 2003 at 02:33:50PM -0700, William Lee Irwin III wrote:
> cpu_present_to_apicid() needs a similar treatment to dhansen's prior
> bits. diff incoming shortly.

Could one of you two try this out on a Summit machine in addition to
Dave's prior patch (or hook me up to one)?

Thanks.


-- wli


===== include/asm-i386/mach-bigsmp/mach_apic.h 1.16 vs edited =====
--- 1.16/include/asm-i386/mach-bigsmp/mach_apic.h	Wed Aug 20 22:32:06 2003
+++ edited/include/asm-i386/mach-bigsmp/mach_apic.h	Thu Aug 21 15:07:42 2003
@@ -86,7 +86,10 @@
 
 static inline int cpu_present_to_apicid(int mps_cpu)
 {
-	return (int) bios_cpu_apicid[mps_cpu];
+	if (mps_cpu < NR_CPUS)
+		return (int)bios_cpu_apicid[mps_cpu];
+	else
+		return BAD_APICID;
 }
 
 static inline physid_mask_t apicid_to_cpu_present(int phys_apicid)
===== include/asm-i386/mach-default/mach_apic.h 1.27 vs edited =====
--- 1.27/include/asm-i386/mach-default/mach_apic.h	Mon Aug 18 19:46:23 2003
+++ edited/include/asm-i386/mach-default/mach_apic.h	Thu Aug 21 15:08:15 2003
@@ -83,7 +83,10 @@
 
 static inline int cpu_present_to_apicid(int mps_cpu)
 {
-	return  mps_cpu;
+	if (mps_cpu < NR_CPUS)
+		return mps_cpu;
+	else
+		return BAD_APICID;
 }
 
 static inline physid_mask_t apicid_to_cpu_present(int phys_apicid)
===== include/asm-i386/mach-es7000/mach_apic.h 1.3 vs edited =====
--- 1.3/include/asm-i386/mach-es7000/mach_apic.h	Wed Aug 20 22:32:06 2003
+++ edited/include/asm-i386/mach-es7000/mach_apic.h	Thu Aug 21 15:08:41 2003
@@ -106,8 +106,10 @@
 {
 	if (!mps_cpu)
 		return boot_cpu_physical_apicid;
-	else
+	else if (mps_cpu < NR_CPUS)
 		return (int) bios_cpu_apicid[mps_cpu];
+	else
+		return BAD_APICID;
 }
 
 static inline physid_mask_t apicid_to_cpu_present(int phys_apicid)
===== include/asm-i386/mach-numaq/mach_apic.h 1.22 vs edited =====
--- 1.22/include/asm-i386/mach-numaq/mach_apic.h	Wed Aug 20 22:32:06 2003
+++ edited/include/asm-i386/mach-numaq/mach_apic.h	Thu Aug 21 15:10:31 2003
@@ -65,9 +65,17 @@
 	return (int)cpu_2_logical_apicid[cpu];
 }
 
+/*
+ * Supporting over 60 cpus on NUMA-Q requires a locality-dependent
+ * cpu to APIC ID relation to properly interact with the intelligent
+ * mode of the cluster controller.
+ */
 static inline int cpu_present_to_apicid(int mps_cpu)
 {
-	return ((mps_cpu >> 2) << 4) | (1 << (mps_cpu & 0x3));
+	if (mps_cpu < 60)
+		return ((mps_cpu >> 2) << 4) | (1 << (mps_cpu & 0x3));
+	else
+		return BAD_APICID;
 }
 
 static inline int generate_logical_apicid(int quad, int phys_apicid)
===== include/asm-i386/mach-summit/mach_apic.h 1.31 vs edited =====
--- 1.31/include/asm-i386/mach-summit/mach_apic.h	Wed Aug 20 22:32:06 2003
+++ edited/include/asm-i386/mach-summit/mach_apic.h	Thu Aug 21 15:10:57 2003
@@ -87,7 +87,10 @@
 
 static inline int cpu_present_to_apicid(int mps_cpu)
 {
-	return (int) bios_cpu_apicid[mps_cpu];
+	if (mps_cpu < NR_CPUS)
+		return (int)bios_cpu_apicid[mps_cpu];
+	else
+		return BAD_APICID;
 }
 
 static inline physid_mask_t ioapic_phys_id_map(physid_mask_t phys_id_map)
===== include/asm-i386/mach-visws/mach_apic.h 1.7 vs edited =====
--- 1.7/include/asm-i386/mach-visws/mach_apic.h	Wed Aug 20 22:30:10 2003
+++ edited/include/asm-i386/mach-visws/mach_apic.h	Thu Aug 21 15:11:16 2003
@@ -59,7 +59,10 @@
 
 static inline int cpu_present_to_apicid(int mps_cpu)
 {
-	return mps_cpu;
+	if (mps_cpu < NR_CPUS)
+		return mps_cpu;
+	else
+		return BAD_APICID;
 }
 
 static inline physid_mask_t apicid_to_cpu_present(int apicid)

  reply	other threads:[~2003-08-21 22:17 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-08-20 21:58 CPU boot problem on 2.6.0-test3-bk8 Andrew Theurer
2003-08-21  1:02 ` Dave Hansen
2003-08-21  1:13   ` Andrew Theurer
2003-08-21  3:42     ` Dave Hansen
2003-08-21 14:10       ` Andrew Theurer
2003-08-21 14:58         ` Dave Hansen
2003-08-21 15:56           ` Andrew Theurer
2003-08-21 16:09             ` Dave Hansen
2003-08-21 17:02               ` Andrew Theurer
2003-08-21 21:13                 ` William Lee Irwin III
2003-08-21 21:33                 ` William Lee Irwin III
2003-08-21 22:17                   ` William Lee Irwin III [this message]
2003-08-21 22:45                     ` William Lee Irwin III
2003-08-21 23:10                       ` William Lee Irwin III
2003-08-22 17:16                 ` William Lee Irwin III
2003-08-22 18:16                   ` Andrew Theurer
2003-08-22 19:11                   ` Andrew Theurer
2003-08-21 15:28         ` Dave Hansen
2003-08-21 21:04           ` William Lee Irwin III

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20030821221744.GK4306@holomorphy.com \
    --to=wli@holomorphy.com \
    --cc=akpm@osdl.org \
    --cc=habanero@us.ibm.com \
    --cc=haveblue@us.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mbligh@aracnet.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.