Linus Torvalds has just announced the release of Linux Kernel 3.4 on the 20th of May:
I just pushed out the 3.4 release.
Nothing really exciting happened since -rc7, although the workaround for a linker bug on x86 is larger than I’d have liked at this stage, and sticks out like a sore thumb in the diffstat. That said, it’s not like even that patch was really all that scary.
In fact, I think the 3.4 release cycle as a whole has been fairly calm. Sure, I always wish for the -rc’s to calm down more quickly than they ever seem to do, but I think on the whole we didn’t have any big disruptive events, which is just how I like it. Let’s hope the 3.5 merge window is a calm one too.
Linux 3.3 merged Android drivers to mainline, added further improvements to btrfs and ext-4 file systems, several networking features and improvements (Open Vswitch, bufferbloat limitations…), Texas Instruments C6X DSP support and EFI boot support.
Linux 3.4 brings the following key changes:
- Btrfs Updates:
- Repair and data recovery tools: btrfs-restore + better fsck
- Metadata blocks bigger than 4KB
- Performance improvements: The throughput is now much more constant. See file creation test in 3.3 vs 3.4. The same test that previously took 354 seconds, now takes 204 seconds.
- Better error handling.
- GPU Drivers:
- Early support of Nvidia GeForce 600 ‘Kepler
- Support for AMD RadeonHD 7xxx and Trinity APU series
- Support of Intel Medfield graphics
- New X32 ABI: 64 bit mode with 32 bit pointers: The ability to use 32-bit pointer is 64-bit mode allows the higher performance of 64-bit mode together with the smaller footprint of 32-bit pointer.You can check the presentation slides for details.
- x86 cpu driver autoprobing: Linux adds auto probing support for cpu drivers, based on the x86 cpuid information, in particular based on vendor/family/model number and also based on CPUID feature bits. This solve a loading failure with SSE 4.2 accelerated CRC module which can significantly boost (once it’s loaded) the performance of BTRFS.
- Support for external read-only device as origin source of a thin provisioned LVM volume: One use case for this is VM hosts that want to run guests on thinly-provisioned volumes but have the base image on another device.
- “perf” tool improvements:
- GTK2 report GUI perf report – It can be launched with ‘perf report –gtk’
- Better assembly visualization – ‘perf annotate’ has visual improvements for assembly
- Hardware based branch profiling – Some CPUs can support this feature (x86 Intel CPUs with the ‘LBR’ hardware feature) and this is support in perf. Command line: ‘perf record -b’
- Filtering of users and threads – Filter users with ‘–uid’ parameter and processes & threads with ‘-p’ and ‘-t’ parameters.
- Yama’ security module:Yama is a new security module (like selinux, apparmor…) that collects a number of system-wide DAC security protections that are not handled by the core kernel itself.
- QNX6 filesystem: Read-only support for qnx6fs used by newer QNX operating system versions such as Neutrino.
Further details on Linux 3.4 are available on Kernelnewbies.org.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.