Linus Torvalds has announced the release of Linux Kernel 3.7:
Whee. After an extra rc release, 3.7 is now out. After a few more trials at fixing things, in the end we ended up reverting the kswapd changes that caused problems. And with the extra rc, I had decided to risk doing the buffer.c cleanups that would otherwise have just been marked for stable during the next merge window, and had enough time to fix a few problems that people found there too.
There’s also a fix for a SCSI driver bug that was exposed by the last-minute workqueue fixes in rc8.
Other than that, there’s a few networking fixes, and some trivial fixes for sparc and MIPS.
Anyway, it’s been a somewhat drawn out release despite the 3.7 merge window having otherwise appeared pretty straightforward, and none of the rc’s were all that big either. But we’re done, and this means that the merge window will close on Christmas eve.
Or rather, I’ll probably close it a couple of days early. For obvious reasons. It’s the main commercial holiday of the year, after all.
So aim for winter solstice, and no later. Deal? And even then, I might be deep into the glögg.
Linux 3.6 brought updates to Btrfs & ext4 file system, some initial work for SMBv2 protocol, networking improvements, safe swap over NFS/NBD and VFIO driver for device access from userspace drivers.
Linux 3.7 brings the following key changes:
- ARM multi-platform support – The Linux ARM implementation has added “multi-platform” support – the ability to build a unified ARM kernel image that can boot multiple hardware. Read Supporting multi-platform ARM kernels for details.
- ARM 64 bit support – The new 64 bit ARM CPUs (ARMv8 architecture – AArch64) can run 32 bits code, but the 64 bit instruction set is completely new, and the Linux support has been implemented as a completely new architecture. For details, read Supporting 64-bit ARM systems.
- Cryptographically signed kernel modules – Linux 3.7 allows to optionally sign kernel modules, in order to completely disable the load of modules that have not been signed with the correct key. This feature is useful for security purposes, as an attacker who gains root user access will not be able to install a rootkit using the module loading routines. You may want to check out Loading signed kernel modules for more information.
- Btrfs updates – fsync() speedups, Rrmove the hard link limits inside a single directory (from 20 to 65K), hole punching and chattr per-file NOCOW support.
- Preliminary version of perf trace – This tool looks somewhat like ‘strace’, but instead of using ptrace(), it uses the Linux tracing infrastructure. “pert trace” shows the events associated with the target, initially syscalls, but other system events like pagefaults, task lifetime events, scheduling events, etc. .
- TCP Fast Open (Server Side) – Linux aadded TCP Fast Open support for clients in Kernel 3.6, and this release adds Fast Open support for the server side. “Fast Open” is a optimization technique that can result in speed improvements of between 4% and 41% in the page load times on popular web sites. You can read TCP Fast Open: expediting web services for more information.
- Experimental SMBv2 protocol support – The cifs networking filesystem has added support for the version 2 of the SMB protocol. The SMBv2 protocol is the successor to the CIFS/SAMBA network file sharing protocols, and is the native file sharing mechanism for Windows OSs since Windows Vista. SMBv2 enablement will eventually allow users better performance, security and features, than would not be possible with previous protocols.
- NFS v4.1 support no longer experimental – NFS v4.1 (RFC 5661) has been part of the kernel as an experimental feature for a while, but has now been “upgraded” to a stable release. The main feature of NFS v4.1 is pNFS (parallel NFS) which can take advantage of clustered server deployments.
- Virtual extensible LAN tunneling protocol – vxlan (RFC draft) is a tunneling protocol that allows to transfer Layer 2 ethernet packets over UDP that is often used to tunnel virtual network infrastructure in virtualized environments. See VXLAN for Linux for details.
- Intel “supervisor mode access prevention” support – Supervisor Mode Access Prevention (SMAP) is a new security feature that will be available in future Intel processors.
Further details on Linux 3.7 are available on Kernelnewbies.org.