Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 06 Dec 1996 10:57:25 -0700
From:      Steve Passe <smp@csn.net>
To:        Erich Boleyn <erich@uruk.org>
Cc:        Peter Wemm <peter@spinner.dialix.com>, smp@freebsd.org
Subject:   Re: P6 and FreeBSD/SMP (was -> Re: last major problem) 
Message-ID:  <199612061757.KAA20991@clem.systemsix.com>
In-Reply-To: Your message of "Fri, 06 Dec 1996 08:30:17 PST." <E0vW3AH-0007kq-00@uruk.org> 

next in thread | previous in thread | raw e-mail | index | archive | help
Hi,

>This leads me to believe that the problem is in the MP handling, not the
>base APIC_IO stuff.  Maybe this is a good time to tell some of us what
>is different when activating the other CPUs as far as APIC control?

nothing really, when an AP starts it:

 enables LVT2 an NMI
 clears and sets its Task Priority Register to 0x10
 enables its local APIC with 'focus prio' enabled.

the BSP has been running with the same state since boot.  it is managed
'assumming' there are other CPUs available, specifically:

 the IO APIC is sending messages in broadcast loprio mode, even though
 only the BSP is around to respond.  when a CPU gets the mp_lock it lowers
 its TPR to 0x00, hoping to steer INTs to itself.  I am assumming this
 works when the CPU has the lock for a syscall, but obviously won't help when
 it is servicing an INT as its PPR will override (but thats another issue).
 one difference is that when smp_active == 0, the get/rel lock calls return
 immediately so there is no adjustment of the TPR, but I cant concoct any
 scenario where that hurts anything.

--
Steve Passe	| powered by
smp@csn.net	|            FreeBSD

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: 2.6.2

mQCNAzHe7tEAAAEEAM274wAEEdP+grIrV6UtBt54FB5ufifFRA5ujzflrvlF8aoE
04it5BsUPFi3jJLfvOQeydbegexspPXL6kUejYt2OeptHuroIVW5+y2M2naTwqtX
WVGeBP6s2q/fPPAS+g+sNZCpVBTbuinKa/C4Q6HJ++M9AyzIq5EuvO0a8Rr9AAUR
tBlTdGV2ZSBQYXNzZSA8c21wQGNzbi5uZXQ+
=ds99
-----END PGP PUBLIC KEY BLOCK-----




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199612061757.KAA20991>