CNXSoft – Embedded Systems News

Linux 4.15 Release – Main Changes, Arm and MIPS Architectures

Linus Torvald has released Linux 4.15 last Sunday:

After a release cycle that was unusual in so many (bad) ways, this last week was really pleasant. Quiet and small, and no last-minute panics, just small fixes for various issues. I never got a feeling that I’d need to extend things by yet another week, and 4.15 looks fine to me.

Half the changes in the last week were misc driver stuff (gpu, input, networking) with the other half being a mix of networking, core kernel and arch updates (mainly x86). But all of it is tiny.

So at least we had one good week. This obviously was not a pleasant release cycle, with the whole meltdown/spectre thing coming in in the middle of the cycle and not really gelling with our normal release cycle. The extra two weeks were obviously mainly due to that whole timing issue.

Also, it is worth pointing out that it’s not like we’re “done” with spectre/meltdown. There is more work pending (arm, spectre-v1, misc details), and perhaps equally importantly, to actually get the biggest fix for the indirect branch mitigations, you need not just the kernel updates, you need to have a compiler with support for the “retpoline” indirect branch model.

You can do

cat /sys/devices/system/cpu/vulnerabilities/spectre_v2

and if you don’t have a compiler that supports the retpoline mitigations, you’ll get:

Vulnerable: Minimal generic ASM retpoline

because only the assembly code (not the C code) will have the retpoline mitigation. So keep that in mind.

Anyway, while spectre/meltdown has obviously been the big news this release cycle, it’s worth noting that we obviously had all the *normal* updates going on too, and the work everywhere else didn’t just magically stop, even if some developers have been distracted by CPU issues. In the *big* picture, 4.15 looks perfectly normal, with two thirds of the full 4.15 patch being about drivers, and even the arch updates are dominated by the arm DTS diffs, not by CPU bug mitigation.

So the news cycle notwithstanding, the bulk of the 4.15 work is all the regular plodding “boring” stuff. And I mean that in the best possible way. It may not be glamorous and get the headlines, but it’s the bread and butter of kernel development, and is in many ways the really important stuff.

Go forth and play with it, things actually look pretty good despite everything.

And obviously this also means that the merge window for 4.16 is open. I already have a number of pull requests pending that I will start merging tomorrow. Hopefully we’ll have a _normal_ and entirely boring release cycle for 4.16. Because boring really is good.

Linux 4.14 extended memory limits to 128 PiB (Pebibyte = 1.024 Petabyte)  of virtual address space and 4 PiB of physical address space, added zstd compression in Btrfs and Squashf file systems, improved kernel traces, and implemented zero-copy from user memory to socket among many other changes.

Linux 4.15 was especially newsworthy due to the Spectre/Meltdown debacle and initial fixes affecting all major silicon vendors, and operating systems, but that are also other notable changes:

As usual, I’ll also provide a summary of some changes specific to the Arm architecture:

Finally, some of the changes made for MIPS architecture:

For full details, check out the full Linux 4.15 changelog – with comments only – generated using git log v4.14..v4.15 --stat. You may also consider reading Kernelnewsbies’s Linux 4.15 changelog.