The 970815-SNAP is considered the most recent 'stable' snapshot. Past
this date experimental work on lock pushdown is in progress. If you have
NOT used FreeBSD SMP on your hardware before, start with the 970815 SNAP.
After verifying that SMP works on your system you are encouraged to cvsup to
the latest code and help exercise the lock changes.
July 29, 1997:
IO APIC access moved outside the "giant lock" (PEND_INTS algorithm).
June 23, 1997:
SMP_PRIVPAGES functionality committed and working.
option SMP_PRIVPAGES no longer used, this functionality is automatic.
April 27, 1997:
'make world' of 3.0-current now works again.
LKMs for SMP kernels might not always work.
The SMP specific code tree is now frozen and "for reference only".
April 26, 1997:
******* SMP merged into 3.0-current ********
SMP kernel builds from /usr/src/sys work.
'make world' currently broken (we're working on it).
make -DNOLKM world *might* get thru...
April 24, 1997:
The latest attempt to fix the APIC_IO/SMP_INVLTLB deadlock appears
To enable uncomment "#define XFAST_IPI32" in i386/include/smptests.h.
April 19, 1997:
3.0-SMP updated to 3.0-current (ie., the post Lite-2 version).
This version requires a -current "world" as of (approximately) 97-04-18.
March 1, 1997:
3.0-SMP updated to 3.0-current (ie., current immediately preceeding Lite-2).
February 5, 1997:
added pointers to Rogue hardware and floating point bugs pages.
Here's the reference config file.
I need a volunteer to create a current SMP kernel with it.
January 25, 1997:
3.0-970124-SNAP released. Again, not yet merged with SMP code.
Recent reports suggest 3.0-current may be far enough out of sync with SMP that
the 2 trees are no longer compatible. Would appreciate reports
from anyone having insight on this.
January 14, 1997:
First 3.0-current SNAP released.
NOTE: this does NOT contains the SMP specific code, its just a base
point from which to start, see "Getting started", below, for details on getting the SMP specific files.
December 31, 1996:
3.0-SMP updated to 3.0-current.
December 24, 1996:
P6 bug found!!!
cheap fix (real fix will arrive later), modify pmap.c:
syscons problem should be fixed, report ASAP if not.
December 2, 1996:
All is well with the World, we're working again!!!
There are now 3 branches of test code for the current issues:
automatic CPU startup.
page table entry invalidation.
per CPU private pages.
EIDE working with APIC_IO
November 30, 1996:
all systems seem to be working right now except:
systems booting off of (E)IDE disks.
this is driving me bonkers, I need to drum up an IDE drive...
> 2 CPU systems.
these probably work now, but no reports either way yet...
frequent sig11/12 faults on all systems.
what can I say, this eats it!
anyone still having problems with syscons?
November 26, 1996:
Current SMP kernel is giving some of these:
exited on signal 11
Fatal trap 12: page fault while in kernel mode
we are close to having IPIs working to deal with this problem.
"mixed-mode" APIC/8259 INTerrupt control confirmed working
November 24, 1996:
SMP src/sys merge complete. Features/facts:
The system console is very broken for some boards only. If you experience
problems replace i386/include/console.h and i386/isa/syscons.c
with these older version.
Speed improvements for single task execution.
Initial support for "mixed-mode" APIC/8259 INTerrupt control.
EISA boards now appear to work.
APIC_LAZY is now the default for "options APIC_IO".
November 21, 1996:
SMP src/sys merged with -current. It is very broken right now.
freefall:/incoming has a file called "files1.tar.gz". It contains
i386/include/console.h, i386/isa/syscons.c if you experience
Also in this file are older versions of i386/isa/vector.s and
i386/isa/icu.s, the new ones are also suspect.
Don't even attempt the APIC_IO version till the non-APIC version works.
Please report any clues ASAP!
November 11, 1996:
New round of code committed. This fixes MANY bugs for "default
configurations". APIC_IO/EISA bus support is known to be broken
for non-default configurations at this time. Expect fix in
November 6, 1996:
You can no longer get the SMP sources via sup, it has been replaced by
cvsup. First you will need to install the cvsup binaries on your
system. These can be found in cvsup-bin-13.5.
Install according to the directions in "Install". The supplied
supfile converter doesn't know about "smp", so you have to
manually edit your 'smp-supfile'. Change "host=sup.FreeBSD.org" to
"host=cvsup.FreeBSD.org". If running X invoke as usual, you
will get a nice GUI interface, click the green arrow in lower
left corner to start. To run without this interface type
"cvsup -g -L 2 smp-supfile".
November 5, 1996:
New, improved mptable released. Includes optional dmesg output
as well as building an "options" list for the kernel config file.
Please download and return results, even if you have previously
done so. This version gives me additional information.
November 1, 1996:
I/O APIC support cleanup released @ ALPHA level.
October 31, 1996:
I/O APIC support released.
October 6, 1996:
SMP src/sys synced with -current.
October 2, 1996:
test4c commited to CVS tree.
October 1, 1996:
September 29, 1996:
The patches for SPARSE/un-ordered APIC IDs have been commited.
The patches for non-default APIC addresses have been commited.
The patches that fix the "freeze' problem on halt/reboot have been commited.