DragonFly kernel List (threaded) for 2007-03
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]
Re: SMP/UP kernel S01E02
:Well, I've been thinking of the SMP/UP issue many times, and the best solution would be if SMP kernels could boot on UP machines. I have plenty UP boxes and a few SMP boxes to test on. I am not claiming anyhing, this is just 'food for thought'.
:
:--
:Gergo Szakal <bastyaelvtars@gmail.com>
:University Of Szeged, HU
:Faculty Of General Medicine
It's actually fairly easy to do this. I did some of the code separation
work months ago but didn't go all the way to allowing the ICU vs APIC
selection to occur dynamically.
The main issue is determining whether the ICU or the APIC should be used
to route interrupts.
/usr/src/sys/platform/pc32/apic
/usr/src/sys/platform/pc32/icu
At the moment only one or the other can be included. It would not
take a whole lot of work to allow both to be included, then figure out
which one to use at run time during early boot.
To do this, the MachIntrABI structure needs to be declared generically
and then loaded with either the icu or the apic ABI. Right now the
structure is declared in the icu and the apic code (so only one can be
included).
I've done most of the other namespace separation already. I think
the MachIntrABI structure is the last big piece.
The SMP code for handling IPI messages and other places where we have
#ifdef SMP would also need some work to make the SMP code operate in
a UP environment.
-Matt
Matthew Dillon
<dillon@backplane.com>
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]