Relatively often there are new kernel upgrades. But every time I install them, I do not see any difference between before and after. What do they exactly provide? How can I feel their presence on me? Are they really needed?
It’s a good thing that you don’t notice any difference when upgrading the kernel; the Linux kernel is always supposed to be backwards-compatible.
Now obviously there are differences. You can get some idea by reading the “human” changelogs on Kernel Newbies; the changes tend to fall under four large headings:
- security fixes (including fixes for high-profile issues such as the Spectre variants, Meltdown etc.)
- new hardware support, or improved hardware support
- new features (new file systems etc.)
- refactoring, e.g. improvements to the design and architecture, or performance improvements
In most cases you’ll only notice changes which enable previously-unsupported hardware which you happen to have, or enable new features on your hardware. Other changes will be invisible, either because they’re supposed to be (security fixes and refactoring) or because they require support from applications or libraries before they make any difference. In some cases even improved hardware support won’t be apparent immediately; for example, improved OpenGL support in your GPU’s drivers requires support in Mesa too.
The presence of security fixes in nearly all kernel releases means they really are needed: you should be tracking either the latest version in general, or the latest version in whatever stable branch you’re using (assuming it’s supported). The safest approach is to use your distribution’s kernel, again assuming you’re using a supported release of your distribution.
You can read the changelogs anytime at http://kernel.org/ https://cdn.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.18.3 https://cdn.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.17.17