Subject: HEADS UP: i386mp branch merged
To: None <current-users@netbsd.org, port-i386@netbsd.org>
From: Frank van der Linden <fvdl@wasabisystems.com>
List: current-users
Date: 10/01/2002 15:54:59
I just merged Bill Sommerfeld's i386mp branch into i386/-current. The
code should work fine on 1-CPU systems, and quite well on a lot
of multiprocessor systems (certainly the newer ones).
Known issues:
* The performance counter code (options PERFCTRS) has been
obsoleted by this, since it doesn't work on multiprocessor
systems. The code and manpage will be changed to reflect
this.
* Interrupt counters (vmstat -i) won't work for the time
being if MULTIPROCESSOR is defined.
* There are probably a few locking problems lurking in the
USER_LDT code with MULTIPROCESSOR switched on.
* As on all other platforms that support MP (or kernel
configs that have LOCKDEBUG switched on), RAIDframe
may have locking problems. Recently, an effort was
made to fix this, but I haven't been able to verify
if it works. Note that RAIDframe is currently broken
in -current because of a seperate issue.
* Interrupt line sharing between different IPLs isn't
optimal in the MP case (although not really much worse
than the single processor case).
Interrupt handling and some other reshuffling will hopefully
be redone in the near future (I have code which isn't quite
there yet).
Note that kernel config files for single processor machines need the line:
cpu0 at mainbus0
..to configure correctly.
Multiprocessor kernels need:
cpu* at mainbus?
ioapic* at mainbus? apid ?
options MULTIPROCESSOR
options COM_MPLOCK
..and if you want debugging and/or lots of output:
options MPDEBUG
options MPVERBOSE
Also, because of other, unrelated changes, you'll need to recompile
config(8) first if you want to configure a new kernel.
- Frank
--
Frank van der Linden fvdl@wasabisystems.com
==============================================================================
Quality NetBSD Development, Support & Service. http://www.wasabisystems.com/