Slashdot Mirror


New Linux Kernel Development Process

An anonymous reader writes "Releasing the 2.6.13-rc4 Linux Kernel, Linus Torvalds announced an improved development process to try and minimize the number of bugs in the kernel. The general idea is simple: changes will only be allowed for two weeks after the release of a stable kernel. All the rest of the time between releases will be spent on fixing bugs. This should improve upon last year's development module, which allows for active development in the 2.6 stable kernel."

16 of 207 comments (clear)

  1. talking not enough by enoraM · · Score: 4, Funny
    >as many of you are aware, we were talking (not enough) about the release process at LKS this year.
    As you may be aware, we're goin to talk more than enough about the release process at LKS, since your post is on slashdot ;-)
  2. Interesting by youknowmewell · · Score: 4, Insightful

    This seems to put more pressure on individual distro vendors to add features and test them, then discuss their inclusion in the upstream kernel. Seems pretty reasonable to me. This should definitely stabilize the kernel a lot.

  3. Re:Don't stop there... by phoenix.bam! · · Score: 4, Informative

    I'm assuming (and hoping) the parent and grandparent are trolls because the kernel is already modular and your server shouldn't have audio drivers compiled in unless you're an idiot. It isn't difficult to only compile in drivers for the specific system the kernel will be running on.

  4. a philosophical contradiction? by jesuscyborg · · Score: 5, Interesting

    Didn't Torvalds once say something along the line that 'perfect is the enemy of good' when criticizing BSD? Is he moving away from 'good-enough' with lots of features constantly coming out, towards a more BSD-esque, move along slowly with stable-code philosophy?

    1. Re:a philosophical contradiction? by shmlco · · Score: 4, Insightful
      As Linux is used more and more frequently in corporate mission-critical applications and servers, the priority seems to be shifting towards stability. Code that works is preferred over less-stable code that contains the latest and greatest features.

      Which is also, btw, what people say they want from MS and Windows.

      --
      Any sect, cult, or religion will legislate its creed into law if it acquires the political power to do so.
    2. Re:a philosophical contradiction? by pilgrim23 · · Score: 4, Funny

      Even living gods get older....and some might say....wiser.....

      --
      - Minutus cantorum, minutus balorum, minutus carborata descendum pantorum.
    3. Re:a philosophical contradiction? by po8 · · Score: 4, Funny

      If only we could have it both ways. If only there was some way that folks that needed stability could have some kind of stable Linux kernel, while folks who wanted to experiment with the latest and greatest features could have some kind of experimental kernel.

      Perhaps we could use some kind of numbering scheme that separated the two; for example using "odd" version numbers like 2.7 for the experimental kernel series and even numbers like 2.6 or 2.8 for the stable series. One might imagine that periodically the matured changes in the experimental series could be merged back into the stable series, starting new series for both stable and experimental.

      Maybe Linux should have instituted a process like this years ago. Then they'd have some experience with it by now, and could have it running smoothly instead of messing around with new development processes like they currently are.

      Oh well. Just a crazy dream I had.

    4. Re:a philosophical contradiction? by joto · · Score: 4, Insightful
      Didn't Torvalds once say something along the line that 'perfect is the enemy of good' when criticizing BSD? Is he moving away from 'good-enough' with lots of features constantly coming out, towards a more BSD-esque, move along slowly with stable-code philosophy?

      Linus says a lot of things. It seems to me that he is just using the scientific approach, and trying new ways of doing stuff to see what works best. Some ideas are good, others are bad. But if you never change your process, you'll never find out.

      These changes in the process make a lot of people scream whenever they happen. That's because people doesn't like change. Even now, people are screaming about breaking the odd/even process (which didn't work too well), even though the 2.6 process has worked much better. If the 2.6.13 process isn't even better, Linus will scrap it and try something else (such as going back to the old 2.6 process, or the 2.6.x.y process, or something else new, or whatever).

      Stay calm! The world isn't going to end! All these changes mostly affects kernel developers, and even then, mostly those in the "inner circle". Your redhat/ubuntu/suse/whatever will still work just fine.

  5. Re:Linux no longer a blue-collar kernel? by Anonymous Coward · · Score: 5, Funny

    that's a remarkably verbose post saying... what again? nothing? right.

  6. My gut tells me this is a bit extreme by Work+Account · · Score: 5, Interesting

    As I think more about this decision, I wonder why not simply split the development between bug fixes and feature providers.

    For example, Linux kernel 2.7 is released.

    We run regression test on it for a week or two.

    At that point, we document all known bugs and hand them and the entire 2.7 codebase off to our bug fixing team.

    Then we identify improvements to current capabilities as well as new features we want to add, document all of it clearly, and hand that off to the feature team along with their own copy of the 2.7 baseline.

    Then we have our bug guys working the 2.7_bugfix baseline and our features guys adding valuable new code to the 2.7_features baseline.

    Prior to the next release, we merge all the changes together, spend a week sorting out any dependecy problems and interface problems, then we ship.

    And repeat.

    Sounds feasible to me. I just don't like the feeling I get when thinking that there's such a short development window.

    The Linux kernel is already pretty darn stable, especially when compared to other operating systems. Let's keep the new features coming!

    --

    If you "get" pointers add me as a friend (116)!
  7. Re:2 Weeks by sloanster · · Score: 4, Interesting

    I think you misunderstood the concept. A developer doesn't have 2 weeks to insert new functionality. A developer can work on enhanced performance or new features for 9 months, but there is a 2-week window after each release in which patches will be accepted.

    The two things are orthogonal. Once the code has been thoroughly tested and a patch is ready it should be no problem for the core developers to email the patches to Mr Torvalds within that 2-week window of opportunity. I see no problem here.

  8. Re:Linux no longer a blue-collar kernel? by LnxAddct · · Score: 5, Informative

    With all due respect, Red Hat has been the largest kernel contributor for just under a decade now. They've been taking it in a good direction so far, I wouldn't worry about it too much. Despite all the nonsense slashdotters will say about Red Hat, Red Hat is one of the few distros that actually develops the software it ships rather than just repackaging other people's software. Look at Apache, the Kernel, Gnome, libc, the GNU compiler collection, openoffice, evince, totem, dbus, and most of the drivers you use in your system. The list could literally go on for ages. They also are a major reason why linux has an amazing record for getting patches out quickly for security fixes, alot of those fixes are coded by Red Hat develoeprs. Not to mention they gave Linus 10 million dollars in stock as a showing of gratitude to him. They are a good company, and some of the best kernel hackers are paid by them (including Alan Cox).
    Regards,
    Steve

  9. Re:Linux no longer a blue-collar kernel? by dtfinch · · Score: 4, Funny

    Mods love that sort of stuff, especially when it's double-spaced, one sentence per paragraph.

  10. Two details to note by rewt66 · · Score: 4, Informative
    Note that the idea came out of the Linux Developer's Summit as a way to improve the Linux development process; it's not just one person's idea.

    Also note that they are going to try this approach. If it doesn't work out, I expect that Linus (ever the pragmatist) will drop it rather quickly...

  11. Re:2 Weeks by roystgnr · · Score: 5, Insightful

    A developer doesn't have 2 weeks to insert new functionality. A developer can work on enhanced performance or new features for 9 months, but there is a 2-week window after each release in which patches will be accepted.

    The two things are orthogonal.


    We'd better hope everyone's patches are orthogonal too. If five Linux kernel developers all spend 9 months working independently on patches which turn out to make conflicting changes to the same subsystems, then after 2 weeks there will be one happy developer with his patch in the Linux kernel and four unhappy developers deciding whether to fork Linux or switch to FreeBSD.

    Of course, to avoid such problems we can assume that those many different kernel developers are not working independently, but are committing changes to a single unstable kernel to share those changes and prevent conflicts. In that case, let's just call the new unstable kernel "2.7" and return to the system that was working so well for years.

  12. This is GREAT news by rc.loco · · Score: 5, Interesting


    I remember when the Linux kernel was rock solid, stable and reliable. I remember when there were no huge code changes in the "stable" even-numbered kernel series. Remember those days? I'm talking late 2.2.x before the whole VM debacle in the first part of 2.4.x.

    In the last few years, it seems the push to carve out marketshare on the desktop has been fuelling kernel development more so than server-oriented work. I've been frustrated to the point of recommending Linux-kernel-based systems only with caution and caveats, preferring instead Solaris for serious enterprise-level server-side work.

    If this works out, it'd be a boon for enterprise adoption of the Linux kernel. Hats off to Linus et al. for this change in their practices.

    --
    --rc