Deep overview of freshly baked Linux 3.6

The new core offers a hybrid backup function, can cut off power for "PCI" chips and includes a new platform for custom drivers. Other new features include security enhancements for the temporary directory, as well as quotas and backups for Btrfs.

It took Linus Torvalds and his fellow developers ten weeks to complete the now-released version of Linux 3.6. The new version, called "Terrified Chipmunk", offers a number of new features for both home users and professional system administrators.

Power management

The new Suspend to Both feature provides Linux 3.6 with hybrid redundancy. Mac OS X and Windows have been offering this feature for some time. This function allows the computer to store data during sleep mode, both in RAM and on the system disk. Thus, a system that is in sleep mode usually wakes up within a few seconds, as if it wakes up from Suspend-To-RAM (ACPI S3), however, if the power is lost during sleep mode (the battery is dead), then the system will recover the RAM data from the hard drive, as well as after Suspend-to-Disk (Hibernate). In our short test with an older system and a 250 GB hard drive, Suspend-to-Both worked as expected. It took about 16 seconds to go into sleep mode - four times longer,

The Linux kernel version 3.6 can send PCIe devices to the D3cold deep sleep state, this is supported by some modern computers to completely turn off individual PCIe devices.

File Systems The

still experimental Btrfs file system now supports quotas for specific areas within the file system. Another new feature in Btrfs is send / receive. It allows user programs to determine the difference between two snapshots (a snapshot of the file system), save these differences to a file, and restore backups as needed. This feature is especially useful for incremental, atomic backups. A more detailed description of this feature, which is also available on ZFS, can be found in the article.

One of the new features implemented in Linux 3.6 is based on the idea of ​​1996 - the kernel can now be configured to not follow hard and symbolic links in directories with a set of sticky bits (such as / tmp /), if these links point to folders located higher in the directory tree. As explains, this feature, which can be activated via Sysctl, put an end to the general technique that cybercriminals used to escalate privileges using background services running as administrator.


The new interface allows user programs to notify the kernel when the size of the partition they use changes, thereby letting the kernel know about changes in the size of mounted or other partitions at runtime and act accordingly. The resizepart program, which uses the new interface, was included in the recently released second preliminary release of the Util-Linux 2.22-rc2 version.

Changes in the “RAID” software code in the “MD” subsystem should improve the performance of the “RAID” arrays in which one or all storage devices are “SSD”. Kernel developers have combined the tcm_vhost structural driver, which is classified as a statement, but does not live in the statement of the kernel tree. This allows SCSI devices on the host system to be used with minimal overhead for KVM virtual systems.


KVM now includes various modifications that reduce the load on interrupt handling and therefore increase productivity. Another core addition is IOMMU Groups, which improves the isolation of PCI and PCIe devices using I / O virtualization technologies such as AMD-Vi and Intel VT-d. The IOMMU Groups function is also the basis for the VFIO (virtual I / O function - I / O). Designed primarily for KVM, this feature is designed to allow guests to access PCI and PCIe devices at low latency, high bandwidth levels, and without any risk to the host. Detailed information on VFIO is available in the documentation and is described in the article. Extensions that provide VFIO through QEMU are still under development.


By default, TCP Small Queues (TSQ) allows Linux 3.6 to use small buffers of no more than 128 KB per network socket. Like other various recent kernel changes, this measure is intended to avoid "Bufferbloat" (excessive network buffering) - a term used for problems such as high network latency and connection failure caused by excessive buffering during data transfer. According to test results, smaller buffers on the socket do not affect throughput. If necessary, administrators can use the file “/ proc / sys / net / ipv4 / tcp_limit_output_bytes” to adjust the value at run time.

The kernel now includes client support for TCP Fast Open (TFO); server support is planned for Linux 3.7. TFO is an experimental extension to TCP, but the Internet Assigned Numbers Authority (IANA) has not yet been approved. It is designed to reduce the overhead of establishing a connection, which should speed up HTTP connections.


Kernel developers have combined a number of add-ons and fixed a bug in Linux 3.6 aimed at improving support for Apple - MacBooks released in July (such as MacBook Pro Retina). But still, not all the add-ons needed for the new MacBooks have found their place in Linux 3.6. In addition, on some models, this version still causes problems during initialization or when using graphics hardware.

The Radeon graphics driver now activates the fastest PCIe 2.0 transfer mode, where it is supported by hardware. Audio drivers now support Intel Haswell processors and their associated Lynx Point central controllers (PCHs), which Intel plans to release next year. Lenovo's ThinkPad USB keyboard driver with trackpoint were integrated into the input subsystem.

The bnx2x driver, which processes various Broadcom Ethernet chips, now supports the Energy-Efficient Ethernet (EEE) standard, which is defined in IEEE 802.3az. Users can now read or set “EEE” parameters using the recently released “Ethtool 3.5”.

To summarize

Btrfs has taken it one step further, and Linux is finally offering proper support for hybrid expectations. Some system administrators will be happy with the new interfaces for the resizepart utility, because they allow you to change existing partitions without having to reboot the system. Security enhancements regarding soft and hard links have finally fixed many vulnerabilities.

Immediately after the release of Linux 3.6, as a rule, the Linux kernel development cycle begins again, during which kernel developers add many changes for the next version of the kernel to the main development branch. Numerous changes have already been prepared for the first phase of the next release.

Among the components ready for integration is the Intel graphics driver, which updates the code for setting screen modes. Also, the developers make a "major overhaul" of the Nouveau driver. At present, it is not clear whether it will be integrated into Linux 3.7 or not. The same goes for Aarch64, the 64-bit ARM architecture. Not so long ago, an article was published on that provides an overview of the development status of this project.

As usual, Kernel Log will summarize these and other events in the Linux kernel field - including the new stable kernel versions (3.6.y), in which several errors missed by testers during development should be fixed over the next few weeks.

Also popular now: