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:45:43 -0700 [thread overview]
Message-ID: <20030821224543.GL4306@holomorphy.com> (raw)
In-Reply-To: <20030821221744.GK4306@holomorphy.com>
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.
On Thu, Aug 21, 2003 at 03:17:44PM -0700, William Lee Irwin III wrote:
> 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)?
That broke sparse APIC ID's on several subarches. This is a bit less
indiscriminate about who it updates (and should replace the prior patch
wrt. sending anything upstream):
-- 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-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)
next prev parent reply other threads:[~2003-08-21 22:45 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
2003-08-21 22:45 ` William Lee Irwin III [this message]
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=20030821224543.GL4306@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.