Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 24 Oct 2000 09:41:20 +1100 (EST)
From:      Bruce Evans <bde@zeta.org.au>
To:        Matthew Jacob <mjacob@feral.com>
Cc:        Poul-Henning Kamp <phk@critter.freebsd.dk>, freebsd-smp@FreeBSD.ORG
Subject:   Re: cvs commit: src/sys/sys mutex.h 
Message-ID:  <Pine.BSF.4.21.0010240909240.1797-100000@besplex.bde.org>
In-Reply-To: <Pine.LNX.4.21.0010230949140.9395-100000@zeppo.feral.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 23 Oct 2000, Matthew Jacob wrote:

> Strictly speaking, not an inline- but instead a per-platform locore.s
> function- on sun4u it's:
> 
> 
>         retl
>         mov     THREAD_REG, %o0
> 
> On i86 it's:
> 
>         movl    %gs:CPU_THREAD, %eax
>         ret
> 
> 
> This approach solves the KLD issue. But we have to get everyone to agree that
> even UP kernels have to pay the cost of even trivial function reference
> instead of linktime binding.

I wouldn't agree.  Just #define machine-dependent access macros in all
cases.  In particular, don't require MI code to know that per-cpu
globals are sometimes normal globals and sometimes macros.  Only the
i386 UP case made the mistake of not #defining curproc, at least until
recently.

Bruce



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-smp" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0010240909240.1797-100000>