All of lore.kernel.org
 help / color / mirror / Atom feed
From: Martin Wilck <martin.wilck@fujitsu-siemens.com>
To: linux-kernel@vger.kernel.org, wli@holomorphy.com
Cc: Gerhard Wichert <Gerhard.Wichert@fujitsu-siemens.com>
Subject: APIC version and 8-bit APIC IDs
Date: Fri, 12 Aug 2005 13:13:37 +0200	[thread overview]
Message-ID: <42FC8461.2040102@fujitsu-siemens.com> (raw)

Hi William, hello everyone,

The MP_valid_apicid() function [arch/i386/kernel/mpparse.c] checks 
whether the APIC version field is >=20 in order to determine whether the 
CPU supports 8-bit physical APIC ids.

We currently have two modern processors oin our labs (Intel Xeon MP, AMD 
Dual-Core Opteron 875) for which this test is wrong because their APIC 
ids are both 16, but they _do_ support 8-bit APIC ids. This leads to 
erratic error messages and to valid CPUs not being detected.

Unfortunately I cannot tell why this is so, and what test should be used 
instead to make sure a CPU supports 8-bit APIC IDs.

The AMD BIOS and kernel developer's guide for Athlon64 and Opteron 
processors says

"When both ApicExtId and ApicExtBrdCst in the HyperTransport" 
Transaction Control Register are set, all 8 bits of APIC ID are used."

This refers to the TCR register. Reading that would require PCI 
configuration space access before the APICs are set up, I don't know if 
that's possible.
(http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/26094.PDF)

The Intel Manual simply says
"For the Pentium 4 and Intel Xeon Processors, the xAPIC specification 
extends the local APIC field to 8 bits". The CPUs we have are Xeon MP 
(family 15, model 4); their local APIC version is 16, and they do 
support 8-bit APIC-IDs.

I guess it's up to the Intel an AMD people to have a final word on this,
but the current implementation is clearly wrong for these latest CPU types.

Regards
Martin

-- 
Martin Wilck                Phone: +49 5251 8 15113
Fujitsu Siemens Computers   Fax:   +49 5251 8 20409
Heinz-Nixdorf-Ring 1        mailto:Martin.Wilck@Fujitsu-Siemens.com
D-33106 Paderborn           http://www.fujitsu-siemens.com/primergy

             reply	other threads:[~2005-08-12 11:13 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-08-12 11:13 Martin Wilck [this message]
     [not found] <42FC8461.2040102@fujitsu-siemens.com.suse.lists.linux.kernel>
2005-08-12 11:43 ` APIC version and 8-bit APIC IDs Andi Kleen
2005-08-12 13:21   ` Martin Wilck
2005-08-12 13:32     ` Andi Kleen
2005-08-12 13:51       ` Martin Wilck
2005-08-12 14:55         ` Martin Wilck
2005-08-12 14:57           ` Andi Kleen
2005-08-12 16:37             ` yhlu
2005-08-12 16:42               ` Andi Kleen
2005-08-12 17:44                 ` yhlu
2005-08-22  9:50                   ` Martin Wilck
2005-08-23 11:10                     ` Maciej W. Rozycki
2005-08-26 14:01                       ` Martin Wilck
2005-08-26 14:50                         ` Maciej W. Rozycki
2005-08-29  7:25                           ` Martin Wilck
2005-08-12 18:19             ` Siddha, Suresh B
2005-08-12 18:22               ` Andi Kleen
2005-08-12 18:40                 ` Siddha, Suresh B
2005-08-12 18:50                   ` Andi Kleen
2005-08-31 13:13   ` Martin Wilck
2005-08-31 13:25     ` Maciej W. Rozycki
2005-08-31 14:27       ` Martin Wilck
     [not found]       ` <4315B2D9.6080700@fujitsu-siemens.com>
     [not found]         ` <Pine.LNX.4.61L.0508311450020.10940@blysk.ds.pg.gda.pl>
2005-08-31 14:50           ` Martin Wilck
2005-08-31 14:40     ` Andi Kleen

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=42FC8461.2040102@fujitsu-siemens.com \
    --to=martin.wilck@fujitsu-siemens.com \
    --cc=Gerhard.Wichert@fujitsu-siemens.com \
    --cc=linux-kernel@vger.kernel.org \
    --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.