:Summary: -current will be destabilized for an extended period (on the order
:of months). A tag (not a branch) will be laid down before the initial
:checkin, and non-developers should either stick closely to that tag until
:the kernel stabilizes, or expect large doses of pain. This tag will be
:laid down as soon as June 26, 00:00 PST, with a minimum 24 hour warning
:Last week, approximately 20 BSD developers got together and discussed how
:to move FreeBSD's SMP support to the next level. Our effort will be
:largely based on the work that has been done in BSD/OS, which should make
:things go much more smoothly than they otherwise might, but we still expect
:-current to be destabilized for an extended period of time.
:Matthew Dillon is currently working on the locking primitives, as well as
:some changes to the way our top-level kernel locking works. His initial
:code will not remove spl()s. This code will probably be committed as the
Thank you Jason!
Ok, I have put up a web page that will track my efforts.
I got a slow start on the weekend, but I expect to have my piece
commitable this week sometime. When I say committable I mean: won't
crash the system outright but will still probably panic due to legacy
spl*() issues, which we will fix as we see them.
I am making good progress. In many respects it is actually easier to
get the stuff working on a single-cpu system first since all the MP
mechanisms must now work on a single-cpu system due to the preemptive
kernel scheduling, but I expect I will have both single and multi-cpu
systems working more or less (non-inclusive of interrupt threads, which
is going to be Greg's baby, but hopefully with all the support Greg
needs to implement them) in the next few days.
When I get a little further along I will start making patch sets
available on the same page. Probably in the next day or two.
:Device driver maintainers will be able to convert device drivers over a
:period of several months. We expect to have a compatibility shim in place
:initially, but there will be a hard cutoff date sometime before the release
:of FreeBSD 5.0 where the compatibility shim is removed. Before getting too
:excited about this part of the conversion to a threaded kernel, please keep
:in mind that 1) there will be plenty of time to do this conversion, 2) the
:conversion is pretty trivial for most drivers, and 3) as we get to the
:stage where the conversion becomes possible, there will be much more detail
:about how to do the conversion, as well as the working examples of the
:first drivers to be converted.
I believe I found a way to isolate the legacy spl*() stuff without too
much interference with the overall design plan (see my document), but
I will be the second to say that the legacy stuff is ALL going to be
ripped out for the 5.0 release.
I would ask that people not commit major changes to the -current sys tree
until after we lay down the tags and get the new MP core in place.
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message