Home > Linux, Linux 3.0 > Linux 3.4 Release

Linux 3.4 Release

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.

Linus

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.