DragonFly BSD
DragonFly kernel List (threaded) for 2003-07
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: why 4.X instead of 5.X


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxx>
Date: Fri, 18 Jul 2003 10:58:20 -0700 (PDT)

:There is not a misread, but maybe I could have phrased it better.  The
:question I asked was why branch off 4.x instead of 5.x, not whether spls
:were a good thing, which we all agree must be gotten rid of.  I assumed
:from the beginning that you would use mutexes, and having to redo all that
:huge amount of work, when so much has been done in 5.1, well, that's my
:question.
:
:It just seems to me that we could get to where you want us to go faster if
:we jumped off 5.1 than if we jumped off 4.8.
:
:Is it because of the larger commit rate on 5.1 (harder to track), as has
:been suggested?  Is it something intrinsically wrong that you don;t like
:about the 5.1 codebase?
:
:A lot of your suggestions below sound a lot like 5.1's work, don't they?
:..
:Chuck Robey         | Interests include C & Java programming, FreeBSD,
:chuckr@xxxxxxxxxx   | electronics, communications, and SF/Fantasy.

    Well, SPLs are not a major hassle because you can replace them with
    critical sections, and in fact that is what I have done in several
    places. 

    5.x is just too heavily mutexed.  It would take a very long time to unwind
    all the mutexes and I would not be guarenteed a stable system at the end
    of that.  

    I'll give you one example of the problems we would face trying to start
    from 5.x... take a good look at the scheduler core in 5.x, then look at
    the LWKT scheduler core in DragonFly.  Now consider the amount of work
    it would have taken to convert the 5.x scheduler core to LWKT.

    Eventually SPLs will simply be turned off.  One has to be careful in 
    regards to ensuring the system remains stable.  SPLs tell us where we
    have interrupt interlocks now and I am not going to blast through and
    remove all of those excellent tags!  As interrupt subsystems are cleaned
    up we will know exactly where the hotspots are in the main code that
    need to be cleaned up along with them.

					-Matt
					Matthew Dillon 
					<dillon@xxxxxxxxxxxxx>



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]