3

Right now there are about 7 (or more) kernels maintained by the Linux Foundation. I was wondering if you could clarify my doubts and answer my questions:

  1. Isn't the next kernel's release maintaining everything that was included in previous release?

  2. If not, what's the purpose of naming a kernel with higher number, if it's not having the content of the previous one (like in apps)?

  3. Why there has to be so many kernels maintained at the same time, wouldn't e.g. 2 LTS and one or two regular ones be enough?

I'm just simply not following the philosophy of the releases.

  • 1
    In reality, nearly each Linux distribution maintains its own kernel - often based on longterm kernels. For distributions, it is dangerous to change to newer kernel releases as this (probably) introduces new bugs. On some devices, only older kernel versions can be used. Porting custom kernel patches to newer kernel version can be difficult. – jofel Jul 24 '14 at 17:39
2

1) Isn't the next kernel's release maintaining everything than was included in previous release ?

If you mean everything then the answer will always be: "not everything" because there were changes.

2) If not what's the purpose of naming a kernel with higher number if it's not having a content of previous one (like in apps)

There is often a term used feature stop, so a new patchlevel (15) will introduce new features. These features depend many other distribution specific userland tools.

3) Why there has to be so many kernels maintained at the same time, wouldn't e.g. 2 LTS and one or two regular ones be enough ?

There are a lot more kernels i.e. kernels for Android, which are not maintained at kernel.org. The reason is, that on the one hand there are a lot of people who want to implement new features. Features that belong to new, state of the art technology or drivers for brand new hardware. On the other hand, there are a lot of people who wants to bugfix current kernels and want to have stable software.

  • In hypothetical scenario linux kernel 3.16-rc6 tomorrow will become stable (i.e. 3.16.1) and therefore all features of 3.15.6 kernel will be included in 3.16.1 ? – banuy Jul 24 '14 at 21:29
  • For such questions every answer is no. To know more about kernel versioning link. Read the Documentation/Changes where is written i.e. "DevFS has been obsoleted in favour of udev" or similar. So it is true, that a higher kernel version stands for a newer kernel. When in doubt what changes are adapted check for yourself. – user55518 Jul 24 '14 at 22:13
  • I guess now I get it, newer means all the best from previous plus changes for better by replacements, improvements and fixes of bugs from previous releases. – banuy Jul 25 '14 at 13:48
  • "new" means always fresh and not enough tested. If you need a kernel for production, then take one which comes with the distribution. In any other case it's your own risk. I remember there was a 2.2 or 2.4 kernel which destroyed a ext3 file system. It was marked as "dont use" afterwards. – user55518 Jul 25 '14 at 17:24
0

In reality, nearly each Linux distribution maintains its own kernel

The Kernels maintained by distro's are "flavoured" versions of the vanilla kernel (kernel.org). This means the programmers working on the distro added their own code and fixes for modules, but it really is just the same kernel underneath.

For distributions, it is dangerous to change to newer kernel releases as this (probably) introduces new bugs.

A new kernel means new bug-fixes, performance-fixes and new or improved hardware-drivers. The kernel is released as testing, unstable or nightly at first and if most of the bugs are out, a stable kernel follows. So if your distro asks for updating the kernel it is best you do so.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.