Linus Torvalds announced Linux 6.4-rc1 following the closure of the customary two-week merge window, during which disruptive changes are allowed into a new kernel development cycle. The new kernel includes a number of new architecture-specific features, such as x86 LAM (Linear Address Masking) that allows user apps to borrow the top six bits of 56-bit virtual addresses for use as tags (while ignoring them as part of the actual address, this is useful for JITs and JVMs, for example, that need to add metadata to pointers), and a piece of new infrastructure for RISC-V called riscv_hwprobe that aims to make it easier for applications to discover the exact flavour of RISC-V support available.
Perhaps most unusual was “that we had two different pull requests that ended up with me doing my own little series of updates on top”. Linus went on, “The reason I mention this isn’t so much ‘Oh, I got to code a bit again,’ but that this actually caused me to finally switch to a more modern default git diff algorithm.” He provided some guidance around the histogram algorithm and how to configure it for kernel development. Finally, he noted, “One feature that didn’t make it was the x86 shadow stack code [due to a bug that he himself discovered while merging it]. That side was probably a bit unlucky, in that it came in as I was looking at x86 issues anyway.” Shadow stacks aim to prevent stack smashing attacks by creating a second shadow stack tracked separately.