Date: Thu, 25 May 2000 11:32:13 -0700 From: Peter Wemm <peter@netplex.com.au> To: Matthew Dillon <dillon@apollo.backplane.com> Cc: Chuck Paterson <cp@bsdi.com>, "Jordan K. Hubbard" <jkh@zippy.cdrom.com>, Terry Lambert <tlambert@primenet.com>, arch@FreeBSD.ORG Subject: Re: Preemptive kernel on older X86 hardware Message-ID: <20000525183213.AE08A1CE1@overcee.netplex.com.au> In-Reply-To: Message from Matthew Dillon <dillon@apollo.backplane.com> of "Thu, 25 May 2000 09:13:59 PDT." <200005251613.JAA82872@apollo.backplane.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Matthew Dillon wrote: > > : > : The good news is that the actual implementation of the > :mutexs is machine dependent and can change wildly over different > :architectures with no need for the callers to know. > : > :Chuck > : > :"Jordan K. Hubbard" wrote on: Thu, 25 May 2000 01:31:23 PDT > :}> On intel anyway, subroutine calls are *cheap*, especially compared > :}> to the overhead of a locked instruction or even an L1 cache miss. > :} > :}I don't believe this is true on all the architectures FreeBSD is > :}anticipated to run on in the "near future", however. > :} > :}- Jordan > > Lets use subroutines during development at least, it will make > things easier. I don't think anyone can argue with that :-) Which is also required for binary kld's. Having two different versions of kld's - one for SMP and one for UP would be bad. Although I have strategy to take care of this when the revamped config/build process is finished. It will be possible to use kernel config-style build parameters for modules as well. For example, building a "GENERIC" module would cause it to make calls to the mutex subroutines, while some compile option would allow you to make a tuned SMP-specific kld for your local machine. Cheers, -Peter To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000525183213.AE08A1CE1>