Linux refers to the family of Unix-like computer operating systems using the Linux kernel. Linux can be installed on a wide variety of computer hardware, ranging from mobile phones, tablet computers, routers, and video game consoles, to mainframes and supercomputers. Linux is a leading server operating system, and runs the 10 fastest supercomputers in the world.
The development of Linux is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed, both commercially and non-commercially, by anyone under licenses such as the GNU General Public License. Typically Linux is packaged in a format known as a Linux distribution for desktop and server use. Some popular mainstream Linux distributions include Debian (and its derivatives such as Ubuntu), Fedora and openSUSE. Linux distributions include the Linux kernel and supporting utilities and libraries to fulfill the distribution’s intended use.
Mainline tree is maintained by Linus Torvalds. It’s the tree where all new features are introduced and where all the exciting new development happens. New mainline kernels are released every 2-3 months.
After each mainline kernel is released, it is considered “stable.” Any bug fixes for a stable kernel are backported from the mainline tree and applied by a designated stable kernel maintainer. There are usually only a few bugfix kernel releases until next mainline kernel becomes available — unless it is designated a “longterm maintenance kernel.” Stable kernel updates are released on as-needed basis, usually once a week.
There are usually several “longterm maintenance” kernel releases provided for the purposes of backporting bugfixes for older kernel trees. Only important bugfixes are applied to such kernels and they don’t usually see very frequent releases, especially for older trees.
“Nothing fundamentally different about this release” obviously doesn’t mean there aren’t lots of changes, though. There’s about 13.5k non-merge commits in here (and 800+ merges), so 6.0 looks to be another fairly sizable release.
I actually was hoping that we’d get some of the first rust infrastructure, and the multi-gen LRU VM, but neither of them happened this time around. There’s always more releases. But there’s a lot of continued development pretty much all over the place, with the “shortlog” being much too long to post and thus – as always for rc1 notices – below only contains my “merge log”. You can definitely get a kind of high-level overview by just scanning that, but obviously it’s worth once again pointing out that the people mentioned in the merge log are just the maintainers I pull from, and there’s more than 1700 developers involved when you start looking at the full details in the git tree.
And, once again, this is one of those releases where you should not look at the diffstat too closely, because more than half of it is yet another AMD GPU register dump. And the Habanalabs Gaudi2 eople want to play in that space too, but they don’t reach quite the same lofty results that the AMD GPU people have become so famous for. I’m sure it’s just a matter of time.
The CPU people also show up in the JSON files that describe the perf events, but they look absolutely tiny compared to the ‘asic_reg’ auto-generated GPU and AI hardware definitions.
So just avert your eyes from those parts if you decide that you actually want to look at the diffs themselves. Once you do that, the stats look pretty normal, with roughly 60% driver updates (all over, but gpu, networking and sound are the big updates – again, that’s pretty much par for the course). The rest is a mix of arch updates, filesystems, tooling, and just random changes all over.
In all its glory (so all those AMD GPU hardware definitions etc included), it’s 13099 files changed, 1280295 insertions(+), 341210 deletions(-). Complete release notes for Linux Kernel 6.1.2 can be found here.