LWN.net Logo

Possible changes to longterm kernel maintenance

Possible changes to longterm kernel maintenance

Posted Aug 14, 2011 19:44 UTC (Sun) by lmb (subscriber, #39048)
In reply to: Possible changes to longterm kernel maintenance by giraffedata
Parent article: Possible changes to longterm kernel maintenance

Backports for "just bugfixes" also carry the risk of unintended regressions. e.g., side effects that are either present both in the tip, or occur just in the backport because the changeset interacts with other patches that have since been applied but not backported. Or even whole fixes that would be applicable to the user base but have not yet been identified and thus not backported (yet). Or that many many users have run kernels leading up to the current tip, but the userbase testing the combination of patches in the backported environment is usually much smaller.

The whole notion that "backports are safer" is, well, a viable business model, but not necessarily sound engineering practice, at least if performed at any non-trivial scale.

Code changes to mainline carry a risk of introducing regressions or new bugs, sure. But so do backports. What I'm proposing is to strengthen tip against regressions by improved QA and process.

Another fallacy is that, because upgrades are scary, you want to do them less often. But that doesn't work out - the delta *keeps* getting larger, and the amount of time that passes during which you *didn't* pay attention does too. The cost does not go down, the effort to get it all working again actually *increases* and needs to be paid in much larger bills than if one had a reasonably fine grained continuous policy.

I already believe that, since code quality *is* getting better over time faster than it is getting worse, that upgrading is generally the safer choice - at least if the regression tests pass. (I'm not saying that we're doing all that we can or should, sure, there are things that can be improved.) But people still cling to the enterprisey-mindset.

Guys and gals, if the enterprisey mindeset worked and was overall the better choice, we'd still be running Solaris, IRIX, UnixWare and the like.


(Log in to post comments)

Possible changes to longterm kernel maintenance

Posted Aug 15, 2011 0:11 UTC (Mon) by dlang (✭ supporter ✭, #313) [Link]

it would really help if there was support for older kernels for a little longer than there currently is for those cases where a companies regression test does run into a problem with the new kernel.

Possible changes to longterm kernel maintenance

Posted Aug 18, 2011 18:48 UTC (Thu) by vonbrand (subscriber, #4458) [Link]

You know that if you come up with the manpower to do it, it will happen. Otherwise, good luck...

Possible changes to longterm kernel maintenance

Posted Aug 15, 2011 13:38 UTC (Mon) by NAR (subscriber, #1313) [Link]

I already believe that, since code quality *is* getting better over time faster than it is getting worse

Even if it's true, I do think the improvement is not monotonous. And it's really hard to explain costumers that "in the name of forward progress we've just broke your system and you won't be able to get any work done for a week on the system you've paid thousands of dollars".

Guys and gals, if the enterprisey mindeset worked and was overall the better choice, we'd still be running Solaris, IRIX, UnixWare and the like.

Actually we still run some of them. And we run stable distributions, for example on the server I'm working the kernel is more than 3 years old.

Possible changes to longterm kernel maintenance

Posted Aug 15, 2011 20:16 UTC (Mon) by raven667 (subscriber, #5198) [Link]

In a previous existence we just started looking at migrating workloads from 2.4.21 (RHEL3 when it went unsupported) that hadn't even been run on a 2.6.x system before. The user space changes were more than the kernel changes though.

I run RH derived systems and I think the differences between kernel releases in the 2.6.x and now 3.x world are becoming less and less transformative and disruptive as the kernel is now a very mature software project. I feel somewhat ambivalent between running RH 2.6.18 or RH 2.6.32 (or even the older RH 2.6.9) which is very unlike moving from RH 2.4.21 to 2.6.x which was so clearly better.

I run a vendor kernel and not kernel.org so I'm not following the head of development but from reading lwn it seems that newer releases have higher required quality and fewer and less severe regressions than kernels say 5 years ago. I don't see a technical reason why vendors couldn't move to a new 3.x version during each major service pack release and run 3.x.y for security-only updates during a particular release. As long as the kernel is run in the wild and put through their QA it shouldn't be that different from the current case of back porting.

The big problem is selling that change to enterprise customers who don't want to see the version number change even though that is the reality of what is going on as the kernel gets backported major new features at new service pack release levels.

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds