From: "Martin J. Bligh" <mbligh@aracnet.com>
To: "Protasevich, Natalie" <Natalie.Protasevich@UNISYS.com>,
"'William Lee Irwin III'" <wli@holomorphy.com>,
"Pallipadi, Venkatesh" <venkatesh.pallipadi@intel.com>
Cc: "Nakajima, Jun" <jun.nakajima@intel.com>,
"Van Maren, Kevin" <kevin.vanmaren@UNISYS.com>,
Christoph Hellwig <hch@infradead.org>,
James Cleverdon <jamesclv@us.ibm.com>,
John Stultz <johnstul@us.ibm.com>,
"Mallick, Asit K" <asit.k.mallick@intel.com>,
"Saxena, Sunil" <sunil.saxena@intel.com>,
Linux Kernel <linux-kernel@vger.kernel.org>
Subject: RE: [PATCH][2.4] generic support for systems with more than 8 CP Us (2/2)
Date: Sun, 22 Dec 2002 13:01:54 -0800 [thread overview]
Message-ID: <8870000.1040590913@titus> (raw)
In-Reply-To: <3FAD1088D4556046AEC48D80B47B478C1AEC74@usslc-exch-4.slc.unisys.com>
>> IIRC NUMA-Q can be dynamically detected at boot by means of an MP OEM
>> table's presence, in particular if there's a matching string in the 8B
>> OEM record in the OEM table, with a value of "IBM NUMA" IIRC. This is
>> probably a line or two's worth of change to mpparse.c and declaring a
>> variable for clustered_apic_mode. If it were difficult to detect, I
>> wouldn't have suggested implementing it (though do so at your leisure).
>> =)
I don't think you need the OEM table to detect this, current patches do:
+static inline void mps_oem_check(struct mp_config_table *mpc, char *oem,
+ char *productid)
+{
+ if (strncmp(oem, "IBM NUMA", 8))
+ printk("Warning! May not be a NUMA-Q system!\n");
+ if (mpc->mpc_oemptr)
+ smp_read_mpc_oem((struct mp_config_oemtable *)
mpc->mpc_oemptr,
+ mpc->mpc_oemsize);
+}
@@ -376,7 +368,7 @@ static int __init smp_read_mpc(struct mp
str[12]=0;
printk("Product ID: %s ",str);
- summit_check(oem, str);
+ mps_oem_check(mpc, oem, str);
printk("APIC at: 0x%lX\n",mpc->mpc_lapic);
> The format for the OEM table is pretty much freelance. ES7000 uses it in
> the most informal way. However, we need information from this table to
> switch to APIC mode, start CPUs, etc. To have the hook for OEM tables in
> MP parsing (and in ACPI, for that matter) seems pretty natural. Or if
> reading of the OEM table could also be done in more generic way so other
> platforms had chance to read their tables seamlessly...
Support for parsing the mps oem tables is already there - I use it for
NUMA-Q ... see if smp_read_mpc_oem will do what you want ... if not,
maybe we can generalise it out.
> Also, could the clustered_logical and clustered_physical modes be
> implemented as a primary item, with NUMA being a secondary with the set of
> its unique features on top of the certain APIC mode? This way, a clustered
> mode for the APIC could be selectable without NUMA. CLUSTERED_APIC_NUMAQ
> could be still an option with an appropriate clustered mode defined.
Yup - it was only set up that way because we had a 1-1 correlation between
NUMA and clustered_apic_mode at the time. Switching the ordering as you
suggest seems sensible now.
In the last patch from Venkatesh there was a > 8CPUs option ... that
seems like a direct correlation to clustered apic support to me ...
maybe we could just switch on CONFIG_X86_CLUSTERED_APIC directly and
bypass CONFIG_X86_MANY_CPU? The menu text could stay the same (less
confusing for users than asking them about apic modes) ...
M.
next prev parent reply other threads:[~2002-12-22 20:54 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <3FAD1088D4556046AEC48D80B47B478C1AEC74@usslc-exch-4.slc.unisys. com>
2002-12-22 20:21 ` [PATCH][2.4] generic support for systems with more than 8 CP Us (2/2) Protasevich, Natalie
2002-12-22 21:01 ` Martin J. Bligh [this message]
2002-12-22 22:26 ` William Lee Irwin III
2002-12-22 21:36 Protasevich, Natalie
2002-12-24 2:48 ` James Cleverdon
-- strict thread matches above, loose matches on Subject: below --
2002-12-23 17:07 Protasevich, Natalie
2002-12-23 18:54 Pallipadi, Venkatesh
2002-12-24 3:22 Protasevich, Natalie
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=8870000.1040590913@titus \
--to=mbligh@aracnet.com \
--cc=Natalie.Protasevich@UNISYS.com \
--cc=asit.k.mallick@intel.com \
--cc=hch@infradead.org \
--cc=jamesclv@us.ibm.com \
--cc=johnstul@us.ibm.com \
--cc=jun.nakajima@intel.com \
--cc=kevin.vanmaren@UNISYS.com \
--cc=linux-kernel@vger.kernel.org \
--cc=sunil.saxena@intel.com \
--cc=venkatesh.pallipadi@intel.com \
--cc=wli@holomorphy.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.