small scheduler hack/patch

John Baldwin jhb at FreeBSD.org
Thu Jul 10 14:35:50 PDT 2003


On 10-Jul-2003 Bruce Evans wrote:
> On Thu, 10 Jul 2003, Julian Elischer wrote:
> 
>> I have a small "proof of concept" scheduler hack at:
>> http://www.freebsd.org/~julian/it.diff
>> ...
>> It's only implemented for SMP/i386 as the code to halt the cpu is only
>> present (from my quick view) in x86 and it doesn't make sense in UP..
> 
> ipi_selected() is essentially MI although it is declared in
> <machine/smp.h> and takes MD arg types, since it is used in subr_smp.c
> and subr_smp.c is MI by definition.  Its second arg is u_int64_t on
> alphas, int on ia64's, and u_int on other arches.  This isn't a problem
> since the arg is always a #define'd value like IPI_AST and these values
> have MD definitions.  Its first arg has type u_int64_t on ia64's and
> u_int on other arches.  This is bogus for ia64's since subr_smp.c uses
> u_int for all bitmaps of CPUs, so systems with more than 32 CPUs cannot
> actually work.

I'm actually not a big fan of the CPU bitmap thing, but perhaps an MD
cpu_bitmap typedef should be defined?

-- 

John Baldwin <jhb at FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/


More information about the freebsd-current mailing list