From: James Bottomley <James.Bottomley@HansenPartnership.com>
To: William Lee Irwin III <wli@holomorphy.com>,
James Bottomley <James.Bottomley@HansenPartnership.com>,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH] Voyager subarchitecture for 2.5.44
Date: Sat, 19 Oct 2002 12:34:24 -0500 [thread overview]
Message-ID: <200210191734.g9JHYOk03271@localhost.localdomain> (raw)
In-Reply-To: Message from William Lee Irwin III <wli@holomorphy.com> of "Fri, 18 Oct 2002 23:32:30 PDT." <20021019063230.GE23425@holomorphy.com>
> This is a very interesting architecture. Could you describe vaguely
> (for someone starved enough for time he might have trouble finding
> time to examine your tree) how cpu wakeup with the VIC proceeds?
You mean how the VIC boots? Certainly. Referring to the architecture in
http://www.hansenpartnership.com/voyager/L5arch.html
The VIC is basically a set of 8258 dyads (and voyager has up to 8 of them).
The boot CPU can send a cross processor interrupt (CPI) to any VIC connected
CPU. However, the boot CPU can only modify its own VIC 8258 dyad, so theres a
masquerade register that temporarily globally drives the VIC processor ID
lines so that the boot CPU can lower the interrupt mask in a different VIC.
However, each CPU card has only one or two VIC connections, so booting the
Quad cards is a sort of one-two trick: you VIC boot the VIC connected CPU
(called the extended CPU) and then it QIC (Quad interrupt controller) boots
the remaining CPUs. The QIC works using a cache line interference mechanism
(so writes to a particular part of memory trigger the CPI). However, only
CPUs local to the Quad can masquerade as each other to lower the QIC interrupt
mask.
> Also, I'd like to say this patch is impressively isolated from generic
> i386 code. Although I've not tested, it seems very clear from the form
> of the code that it will have no impact on UP i386 or other subarches.
Well technically, there's the boot time GDT separation (make boot GDT smaller
and simpler than the runtime) which affects all x86.
There's also the TSC timer problem which is fixed in the voyager tree, but
which is still being discussed on lkml. Without turning off the TSC entirely
clock jitter is so bad in 2.4.43 that it causes hangs in the softirq code (I
have four CPUs at 66Mhz and 4 at 166Mhz).
James
next prev parent reply other threads:[~2002-10-19 17:28 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-10-19 6:12 James Bottomley
2002-10-19 6:32 ` William Lee Irwin III
2002-10-19 17:34 ` James Bottomley [this message]
2002-10-21 12:35 ` Alan Cox
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=200210191734.g9JHYOk03271@localhost.localdomain \
--to=james.bottomley@hansenpartnership.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®