Slashdot Mirror


Torvalds & Linux Dev Process

sebFlyte writes "Builder UK is reporting that Linus Torvalds is concerned that the Linux production kernel maintainence process might be overly taxing Andrew Morton, saying: "One issue is that I actually worry that Andrew will at some point be where I was a couple of years ago -- overworked and stressed out by just tons and tons of patches. If Andrew burns out, we'll all suffer hugely." Morton himself wants to make -mm releases more often. He sees bugs as more of a problem, rather than patches themselves. His solution is simple: "I'd like to release -mm's more often and I'd like -mm to have less of a wild-and-crappy reputation. Both of these would happen if originators were to test their stuff more carefully.""

30 of 240 comments (clear)

  1. Bus by kevin_conaway · · Score: 5, Insightful

    What if he gets hit by a bus? What would happen then?

    Is there a hierarchy of maintainers (like the succession to President) or what?

    Seems to me they should have at least 2 people at that spot so its not completely a single point of failure.

    1. Re:Bus by Pieroxy · · Score: 3, Insightful

      As far as my experience has shown me, there is no 'single point of failure' in any team made of humans. Some things would be lost for sure, but life (of the project) would just go on.

      Of course, as everything in life, it is not black and white. He would have to be replaced (or the devel structure shifted) and changes would result from this. But the whole thing would not just stop.

    2. Re:Bus by gowen · · Score: 5, Funny
      Is there a hierarchy of maintainers (like the succession to President) or what?
      Yes. If Andrew Morton gets hit by a bus, Dick Cheney gets to maintain the Linux kernel. If Dick is unable to fulfil those duties, the maintenance gets subcontracted to Halliburton.
      --
      Athletic Scholarships to universities make as much sense as academic scholarships to sports teams.
    3. Re:Bus by fbg111 · · Score: 3, Funny

      If Dick is unable to fulfil those duties, the maintenance gets subcontracted to Halliburton.

      ...with a no-bid contract.

      --
      Flying is easy, just throw yourself at the ground and miss. -Douglas Adams
    4. Re:Bus by hobuddy · · Score: 3, Funny

      The solution is to put Richard Stallman in charge of the kernel development process. If he got hit by a bus, the only problem would be a pulverised bus.

      --
      Erlang.org: wow
  2. Fantastic by Professor+S.+Brown · · Score: 5, Funny

    I have to say that we in my lab are thrilled with the progress in the Linux kernel. We have been running Linux in our labs for ages, and it now controls the massive coils that circle all the corridors in our buildings, ominously humming in the night. Before, we had Windows XP controlling the titantic voltages that flow through the rings, and we found that very often the control threads would become scheduled into irrelevance and the voltages would become unstable. This would lead to devastating magnetic fields that would reverse the path of time across the carpet in my room, staining it really badly.

    --
    Shitram Brown, PhD
    Professor of Mathematics
  3. Test? by Hrodvitnir · · Score: 3, Funny

    Don't be silly. That's what users are for.

    At least, that seems to be the prevailing ideology the past 10 years or so.

    --
    "There are more important things than stopping terrorism. Upholding the Constitution is one of them." - Ars Forumer.
    1. Re:Test? by brunson · · Score: 3, Insightful

      It sounds like they could benefit from a practice in Xtreme Programming. The test cases should be written before the patch is written and submitted with the patch. The test cases would then go into a regression framework and the regression test must be passed before a release.

      --
      09F911029D74E35BD84156C5635688C0
      Jesus loves you, I think you suck
    2. Re:Test? by laptop006 · · Score: 3, Insightful

      Show me how to write usable test cases for hundreds of peices of random hardware.

      That which can be tested already is (The big one I can think of is filesystem stability).

      You should at least read kernel traffic to see how much attention some of this code gets, and personally, I'm amazed at how few bugs are left, and how many of those are just badly designed hardware.

      --
      /* FUCK - The F-word is here so that you can grep for it */
    3. Re:Test? by schon · · Score: 3, Funny

      It sounds like they could benefit from a practice in Xtreme Programming.

      Is that where they jump out of an airplane with only a laptop and a parachute, and see how much they can code on the way down?

  4. I haven't moved to 2.6, others haven't either? by garcia · · Score: 5, Interesting

    There doesn't seem to be much happening out there wrt 2.6.15," said Morton in a mailing list posting. "We're at rc2 [the second release candidate of 2.6.14] and I only have only maybe 100 patches tagged for 2.6.15 at this time. The number of actual major features lined up for 2.6.15 looks relatively small too," he said in a later posting.

    Ok, not that much going on w/this kernel, and then we get:

    In the same mailing list thread, Linus Torvalds, the creator of Linux and the maintainer of the development kernel, expressed concerns that the kernel development process may need to be changed to make sure that Morton is not overworked.

    So, there isn't much traffic coming through and Morton wants to do even more -mm releases but Linus thinks he might become overworked? I'm confused. Any clarification on this from the list that the article doesn't give?

    He suggested this may indicate that the kernel is nearing completion. "Famous last words, but the actual patch volume _has_ to drop off one day," said Morton. "We have to finish this thing one day."

    I still haven't even bothered to move to 2.6.x as I have no reason to. I used to update my kernels immediately (and even ran various -AC, etc) but 2.4.x has been so stable for me that I see no reason to bother. Perhaps the reason why traffic is low is because of that?

    1. Re:I haven't moved to 2.6, others haven't either? by Kjella · · Score: 3, Informative

      I'm confused. Any clarification on this from the list that the article doesn't give?

      Well, I'm not sure I understand the situation correctly, but is seems to me like a branch to 2.7 might be coming. Since there's been no separate development branch, there's been a lot more patching than usual for a stable kernel. I think the comments indicate that 2.6 might be close to "done" and should enter maintenance mode. Starting major breakage in the 2.6 branch would overwork Morton, hence the need for a "changed development process".

      I still haven't even bothered to move to 2.6.x as I have no reason to.

      Don't confuse user numbers with development. In fact, they are usually inversely related (the less development, the more stability and the more users.... to a point). And I'm quite sure the causality is that less development in 2.6.x leads to more adoption, not the other way around.

      Kjella

      --
      Live today, because you never know what tomorrow brings
  5. Start adding unit tests by Anonymous Coward · · Score: 5, Insightful

    Add a requirement that each bug should have a failing unit test, that fails before the patch is applied and succeeds after the patch is applied.

    1. Re:Start adding unit tests by Craig+Ringer · · Score: 4, Interesting

      That's reasonable for some very high level subsystems in the kernel. For most things, such as drivers, the scheduler, etc, it's probably not.

      Sometimes defining "pass" and "fail" is hard enough, with tuning efforts. Then there's cleanups. On top of that there are fixes to obsure drivers for hardware that nobody on LKML actually has.

      I'm all for unit test based development, but there are some levels where it's practical, and some where I don't think it is. An OS kernel is to an extent the impractical side. I do like the idea of unit-tests from userspace to make sure nothing userspace-visible breaks, though.

  6. it's an architectural problem by idlake · · Score: 5, Insightful

    This is an architectural problem, not a resource problem. There is no reason why the Linux kernel should require the baroque system of manual patches and updates that is currently in place. Instead, it should be composable at runtime out of many modules that are encapsulated enough and insulated enough from one another to be developed and updated independently.

    1. Re:it's an architectural problem by GileadGreene · · Score: 5, Funny

      You mean like a microkernel system? I bet Andrew Tanenbaum would just love to see Linux move to that model ;-)

    2. Re:it's an architectural problem by mrchaotica · · Score: 3, Insightful

      I think the kernel you're looking for is HURD. ; )

      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

  7. automated testing in kernel development? by markjugg · · Score: 5, Interesting
    In the world of Perl module development, automated testing plays an important role. As a gatekeeper myself, I often request that a code patch also come with an automated test, and the contributors often follow-up with one, if they didn't supply it in the first place.

    In the Pugs project, the coders and testers are generally different people, when the tests being written first.

    I'm fairly ignorant about the kernel development process, so I ask: could automated testing play a greater role in the quality assurance of the project?

  8. Re:Windows broken? by op12 · · Score: 5, Funny

    It was a dupe of this. Wait a minute...a dupe has been pulled on Slashdot! And there was much rejoicing....yay.

  9. Re:Windows is broken -- article missing? by 91degrees · · Score: 4, Funny

    Perhaps Linux needs to switch to a more Windows like development process:)

  10. Kernel 2.6 Problems (Was I better off with 2.4?) by KhanReaper · · Score: 5, Interesting

    Is it me or has kernel 2.6 been comparibly unstable and quirky in the past six months? I have to admit that I am very disappointed with this instability and wish that the Linux developers would move back again to their old even-stable and odd-testing version numbering. Things did seem to be a lot more stable back then when this old versioning scheme was used. I mean really, for the past few months kernel quirks in 2.6 have made the kernel appear more like a testing kernel than anything. I am thoroughly disappointed.

    I know that people will complain that I have not cited anything specific or tangible; that is fine. The point for me is that I am sick of random spurious issues that seem to be fixed in one release and then some new permutation thereof appears later. Candidly a lot of these things have to do with CPU throttling, power management, USB, and other aspects of the kernel.

    While I appreciate how much Linux's hardware support has increased over the past few months, the desire for a more mature environment has left me wanting something more.

    In all seriousness, if the quirks of kernel 2.6 keep persisting, I might be inclined to migrate to, god-forbid, BSD.

    --
    Even the Politburo concurs with Process of Elimination http://process-of-elimination.net
  11. Unit Testing Is Hard by Vagary · · Score: 3, Interesting

    As someone who uses unit testing for application development, I'd have to wonder whether the cost of setting up such a system would be worth the benefits? One of the big challenges in automated testing is measuring behaviour to check correctness.

    How do you check that a kernel driver is using hardware correctly? It's more or less difficult to measure the beavhiour externally depending on the system. Effectively you need to use mock/simulated interfaces -- in this case probably virtual machines -- but then what kind of code coverage would you get?

    Personally, for the kernel, I'd guess the bang-for-buck of adding static checking would be higher than dynamic checking.

  12. Re:Windows not broken anymore? by maxwell+demon · · Score: 5, Funny

    Windows is broken
    Like the first Windows
    Bluescreen has spoken
    Like the first crash.
    Praise for the crashing,
    Praise for the breaking,
    Praise them for springing
    fresh from install.

    SCNR

    --
    The Tao of math: The numbers you can count are not the real numbers.
  13. better interface to the universe .. by torpor · · Score: 4, Interesting

    .. it should be far easier for branches/nodes of the linux kernel codebase to cross-polinate.

    the -mm releases are definitely a high order, public priority; but the broader picture is that there are as many possible permutations of linux code as there are tarballs being globbed.

    i see the taxing of andrew (and linus before) as more of an issue of broken tools. if the linux kernel codebase had tools integrated into the core Makefile which would allow for easier tree/pruning/updates and public server integration as the most -common- interface to the .config/Makefile hegemony, i think we'd be seeing a whole lot more public, broader testing going on. its only because i can't confirm/share system .config databases with my peers that it makes it so hard to test other peoples patches; this could just as easily become a 'namespace' manipulated through existing tools ..

    i mean, there are too many ways to get yourself a copy of the kernel, maneuver the patch universe (why haven't patch namespaces become another NS record type yet, i wonder..?), find bits you want to test, etc.

    i imagine a broader 'namespace of patches, and public tested .configs from .torrent servers[or whatever]' as part of the -basic- Makefile in the kernel releases.. yes, svn&co. have their 'namespaces', but i'm talking about 'make update_patches -server:blahblah.org' as a commonly accepted means of contributing to the patch-sphere.

    which is, actually, huge.

    --
    ; -- the corruption of government starts with its secrets. a truly free people keep no secrets. --
  14. Re:Can anyone ditto this? by RLiegh · · Score: 3, Informative
    Unstable how? It doesn't boot?!?!?!

    ACPI has to be disabled, otherwise it will either freeze or spontaneously reboot. 2.6 will crash while loading modules related to USB, network (loading the 8139too module consistently crashes), agp and hotplug system detection. The install cds of Ubuntu and Suse are stable enough to install, but once installed to the hard drive, the system consistently hangs due either to one of the errors I've already mentioned; or for reasons I haven't tracked down yet.

    [rant]
    I'm not a kernel programmer; I just want a working desktop. KDE works on NetBSD (which automatically detects my sound card) so until the kernel people get their shit together; I'm done with Linux.
    [/rant]
  15. Some already exists. by jd · · Score: 4, Informative
    The Linux Test Project, Web100 (which profiles the network stack) and the TAHI IPv6/IPSec Test Suite should be usable to give you a starting point for validating the kernel. HOL may be usable as a component in formal proofs of components with well-defined behaviour (such as busses, networks, etc). Both TAU and the Performance Application Programming Interface would allow you to create profiles of kernel components running in User-Mode Linux, so allowing developers to spot the causes of things like latency.


    These wouldn't solve ALL problems, or even the majority of them, but they would solve some and they would make life easier on developers in the long-run. Are these being used? Well, a glance at the Freshmeat graphs for Web100 shows that it is getting downloaded. This doesn't mean it is getting used, though. The same is true of virtually all of the other code I've mentioned. People have copies, but if the code being submitted is flakey and taking a long time to fix, then maybe the code is not being used as much as it could/should be.


    The tools exist, the tools exist on people's hard drives, but unless the tools are being used in practice, that's not going to do any good.

    --
    It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
  16. Re:Kernel 2.6 Problems (Was I better off with 2.4? by skidv · · Score: 3, Informative

    I believe the reason that LT discontinued the odd-even numbering was that the "development" kernels were under-tested and provided insufficient grounds for migrating the tree from development to stable.

    Are you aware that the LKM team puts out a stable subversion of each release? I.E. 2.6.11 is released, then 2.6.11.1, 2.6.11.2, 2.6.11.3, etc?

  17. The graveyards are full of indispensable men. by Chyeburashka · · Score: 3, Funny
    Obligitory Charles de Gaulle quote, although he may have actually said "Les cimetières sont pleins d'hommes indispensables."

    Of course, this may explain France's military record.

  18. -mm's by jayemdaet · · Score: 4, Funny

    Melt in your code not in your hand...