back to article Shhhhh! If you're quiet, Linus Torvalds might release a new Linux

The world almost certainly needs to wait another week for Linux 4.9, says the operating system's overlord Linus Torvalds. In his weekly post on the progress of the next kernel release, Torvalds announced release candidate seven of Linux 4.9, saying “ I think we got all the silly problems I was aware of fixed, and on the whole …

  1. Anonymous Coward
    Anonymous Coward

    This is a genuine question to all software devlopers...

    One thing I've never understood is why software is released with known bugs.

    Why not fix everything you are aware of then release it? Then and only then move onto the next shiny thing.

    1. WonkoTheSane

      Re: This is a genuine question to all software devlopers...

      Simples:-

      http://imgur.com/YOmDuDV

    2. richardcox13

      Re: This is a genuine question to all software devlopers...

      > One thing I've never understood is why software is released with known bugs

      In addition to the already noted: changes (including bug fixes) often introduce new bugs, there is also the problem that many bugs are benign – no one is affected – and the change adds risk (the new bug could be far worse).

      There is also the case where an issue is found late. Should the release be delayed for that fix? (Especially true of test releases.)

      Contemporary software systems are very complex. Even a small system will have tens of thousands of interacting parts. Mostly these do not interact (much effort is put into avoiding interactions) but sometimes they need to, and sometimes they do unexpectedly. Any change can potentially trigger an unwanted interaction.

    3. Anonymous Coward
      Anonymous Coward

      Re: This is a genuine question to all software devlopers...

      Suppose that several new bugs are reported every day and it takes a minimum of several days to get a fix reviewed and approved (just an example; I'm not claiming those numbers are accurate for Linux). What you could do is make a release branch, freeze that branch, and wait for the bugs reported against that branch to tail off, but then you may end up with a release that for many users is too out-of-date to be interesting.

    4. AndrueC Silver badge
      Happy

      Re: This is a genuine question to all software devlopers...

      One thing I've never understood is why software is released with known bugs.

      Software is very complex. Some of the most complex things humankind has ever tried to construct. If we refused to release it until everything was perfect you'd be waiting a long time for it. So we have to be pragmatic and choose a level of quality based upon the target market and what that market will tolerate.

    5. DrXym

      Re: This is a genuine question to all software devlopers...

      "One thing I've never understood is why software is released with known bugs."

      Because known bugs vary by their severity and their ability to happen. If a bug causes a kernel panic once in a blue moon on some esoteric setup, do you delay the entire release for the sake of that?

      More severe bugs will be regarded as blockers and the release will be held up until they are fixed. Other bugs might be prioritized to be fixed in a subequent release.

      The adage "never buy version 1 of anything" also applies. This doesn't just affect software either - a brand new model car is riddled with flaws and quality issues. Many of these are known about and others will be found as cars come in for repair or get crashed. Only the most serious issues will justify a recall. Other issues will be fixed during the production life of the vehicle.

    6. Daniel von Asmuth

      Re: This is a genuine question to all software developers...

      the only thing worse than a known bug is an unknown bug:-(

      --

      Honk if you want to wait for Rodham-Clinton 8

    7. alain williams Silver badge

      Re: This is a genuine question to all software devlopers...

      This is not a release it is a release candidate, ie a test/trial to shake out any bugs.

      The point is that Linux kernel development happens in public view; with most (closed source) software these release candidates would not be seen outside of the organisation that writes it.

      1. Captain DaFt

        Re: This is a genuine question to all software devlopers...

        "with most (closed source) software these release candidates would not be seen outside of the organisation that writes it."

        If only that were true. Too many times, closed source software that'd barely qualify as a FOSS early Beta is shipped as "the latest and greatest".

        Unfortunately, as AndrueC stated above:

        "So we have to be pragmatic and choose a level of quality based upon the target market and what that market will tolerate."

        And the Market's been trained to tolerate some pretty shitty quality software.

    8. Sam Liddicott

      Re: This is a genuine question to all software devlopers...

      Supply and demand. People install software with known bugs.

      There is no value in being more picky than your users. Give them the choice.

      I guess the users that care will consider if the way in which the known bug might affect them is worse than the benefits (and fixes) in the new release.

      I guess my server doesn't care if there is a V4Linux regression.

  2. Electron Shepherd

    Odd use of terminology

    If Linus thinks that he'll end up pushing out another release, then to my way of thinking, this one isn't a release candidate. It's a beta, or possibly a preview. A release candidate is one where the developers think it's of sufficient functionality and quality to be released.

    1. Hans 1

      Re: Odd use of terminology

      > If Linus thinks that he'll end up pushing out another release, then to my way of thinking, this one isn't a release candidate.

      Alpha -> not feature complete

      Beta -> feature complete, buggy

      RC -> release candidate, most bugs have been fixed in beta stages (known minor bugs will be addressed in patches), this candidate is there for the testers to yet again test, are there any late showstoppers ? If not, release it! Small issues will be fixed in patches later ...

      In theory, you would only have one RC, however, practice dictates you'll have several, patches sometimes introduce new bugs, testers find more bugs ... showstoppers ( newly found severe bugs) mean you have to create a new RC.

    2. Olius

      Re: Odd use of terminology

      The emphasis needs to be on the word "candidate"

      There are many candidates to become the release. Only one of those candidates will be good enough to become the release. If one candidate "fails", a new, better candidate will be created.

      1. Electron Shepherd

        Re: Odd use of terminology

        But if you think that the software that you have now will need more changes before final release (which is what Linus is saying), then by definition, the current software can't be a release candidate, since you don't intend to release it (as the final product).

        1. The Mole

          Re: Odd use of terminology

          Try these definitions and it may make more sense:

          alpha: many features missing, those that are there may not be even vaguely complete. There will be massive functionality holes and gaps and loads of bugs.

          beta: most important features are present and generally are functionally complete. There will be functionality holes and gaps and many bugs

          release-candidate: all features for the release are present and functionally complete. All the in scope functionality will be present and it should all work but there are potentially significant bugs, but we may get lucky and decide the bugs aren't serious enough to block the release.

          release: all features for the release are present and functionally complete. All the in scope functionality is present and there were few enough bugs to justify releasing it.

          The key thing is that alpha/beta releases may get entire new features, whilst release-candidates should only get bug fixes.

        2. Olius

          Re: Odd use of terminology

          "But if you think that the software that you have now will need more changes before final release (which is what Linus is saying), then by definition, the current software can't be a release candidate, since you don't intend to release it (as the final product)."

          I see what you're saying. But Linus is just talking about how he "feels" about this particular RC. He expects it will fail testing in some way and that there will be another RC afterwards.

          But that is just a feeling, and the current RC may pass all tests quite adequately.

          By advertising this feeling to his team, he is asking them to really, properly hammer this RC in testing, and he is also making sure they are ready to expect to have to patch more bugs (as opposed to going in to "holiday mode"). This is simply good, transparent management and effective communication.

          1. 1Rafayal

            Re: Odd use of terminology

            Its an RC until otherwise proven.

            Yes, it might contain bugs. But until you quantify what those bugs are etc, its still an RC.

            1. Anonymous IV

              Re: Odd use of terminology

              One could say that Linus is getting more and more RC...

  3. Herby

    Bugs and their effect...

    Yes, bugs come in a variety of severities...

    Yes, many bugs are not very tolerable, and result from unknown interactions between things, and with Linux growing in complexity the number of interactions grows as well (and that is just the kernel!). Sometimes bugs can be a bit esoteric and for the most part benign. An example I noted on an operating system from long ago (the 70;s) was that leap year was calculated when the date was manually entered on the console (at boot time). This would have bad effects if the date were entered in December of the year, and the machine ran continually for another two months (till February 28/9th). Since the leap year was for the year before, it might think that Feb 29, 2017 existed (no it doesn't, I know). Sure this was an esoteric bug, and AFAIK it was never fixed, because reboots happened more often than the two month interval necessary for the bug to appear.

    This is why some software is released with "known bugs". They are ones that usually 1) Aren't commonly seen, or 2) Have work-arounds that are acceptable to the user base. They are usually documented as well.

    Then again, I have no idea how Microsoft and Windows do their releases, or if they follow any of these "reasonable" practices about "known bugs". Such is life.

  4. Anonymous Coward
    Anonymous Coward

    Slow it down, Torvalds!

    Everyone start making some noise! The last thing the world needs is another buggy Linux kernel.

    Seriously, these things oughtta get relased every year, not every few months, with bugfixes and backwards-compatibility testing a priority. Geez.

    1. xunilung

      Re: Slow it down, Torvalds!

      Apparently, there are four people, as of right now, who believe bugfixes aren't important :)

      1. Anonymous Coward
        Anonymous Coward

        Re: Slow it down, Torvalds!

        > there are four people, as of right now, who believe bugfixes aren't important

        Nope, there are four people who don't believe you can fix bugs without releasing software ....

POST COMMENT House rules

Not a member of The Register? Create a new account here.

  • Enter your comment

  • Add an icon

Anonymous cowards cannot choose their icon

Other stories you might like