#pragma section-numbers on #pragma keywords Linux, Kernel, Operative System, Changes, changelog, File system, Linus Torvalds, Open Source, drivers #pragma description Summary of the changes and new features merged in the Linux Kernel during the 3.3 development cycle Linux 3.3 [http://lkml.org/lkml/2012/3/18/132 has been released] on 18 Mar 2012. '''''Summary''''': This release features as the most important change the merge of kernel code from the Android project. But there is more, it also includes support for a new architecture (TI C6X), much improved balancing and the ability to restripe between different RAID profiles in Btrfs, support for Ext4 online resize, and several network improvements: a virtual switch implementation (Open vSwitch) designed for virtualization scenarios, a faster and more scalable alternative to the "bonding" driver, a configurable limit to the transmission queue of the network devices to fight bufferbloat, a network priority control group and per-cgroup TCP buffer limits. There are also many small features and new drivers and fixes are also available. [[TableOfContents()]] = Prominent features in Linux 3.3 = == Android merge == Recommended LWN article: [https://lwn.net/Articles/472984/ Bringing Android closer to the mainline] For a long time, code from the Android project has not been merged back to the Linux repositories due to disagreement between developers from both projects. Fortunately, after several years the differences are being ironed out. Various Android subsystems and features have already been merged, and more will follow in the future. This will make things easier for everybody, including the Android mod community, or Linux distros that want to support Android programs. Code: [http://git.kernel.org/linus/355b0502f6efea0ff9492753888772c96972d2a3 (commit)], [http://git.kernel.org/linus/e59bbb8ea3fb5794c09e48490a74b673aee4adc2 (commit)], [http://git.kernel.org/linus/f4dc23861d9da89cfb5d2b0c5b3c96c115842a6c (commit)], [http://git.kernel.org/linus/11980c2ac4ccfad21a5f8ee9e12059f1e687bb40 (commit)] == Btrfs: restriping between different RAID levels, improved balancing, improved debugging tools == '''Improved balancing, raid restripping''' In Btrfs, a "balance" operation consists in a complete rewrite of the filesystem data, pushing all the rewritten data and metadata through the allocators. This operation is needed in some cases. For example if a new drive is added, a balance operation will be needed to redistribute data to the new drive. This balance operation, however, rebalanced the entire filesystem, which could take many hours, and it didn't support a change of raid profile. The balancing implementation has been completely reworked. Btrfs can now pause and resume a balance operation, and give status updates. It is also possible to restripe between different raid levels. It also lets filter the balance based on metadata/data profiles, and lets balance only mostly empty block groups. The userspace utils are available in the "parser" branch of the btrfs-progs. Code: [http://git.kernel.org/linus/f43ffb60fd94e98be02780944e182ade6653b916 (commit 1] ,[http://git.kernel.org/linus/c9e9f97bdfb64d06e9520f8e4f37674ac21cc9bc 2], [http://git.kernel.org/linus/409d404b461afa9738619f249fd7f62a366b68c2 3], [http://git.kernel.org/linus/6fef8df1dcb9b586268caff66df1d71ce8610132 4], [http://git.kernel.org/linus/52ba692972532f8d652080214b6599ece3dd51b9 5], [http://git.kernel.org/linus/10ea00f55a07f8f9536d9112b95108a86f700bab 6], [http://git.kernel.org/linus/ed25e9b26f898d8d63ae4a836489f1923534143b 7], [http://git.kernel.org/linus/5ce5b3c0916ba3a2e34cf648b94044adc5ef9e76 8], [http://git.kernel.org/linus/9555c6c180600b40f6e86bd4dc53bf47e06ed663 9], [http://git.kernel.org/linus/94e60d5a5c4b98a32b1077dec88df09ada712376 10], [http://git.kernel.org/linus/70922617b0099f420deceb53d5dc7f4fb30d08d0 11], [http://git.kernel.org/linus/e4d8ec0f65b91bfb4984a4927632ded95f9825ad 12], [http://git.kernel.org/linus/596410151ed71819b9e8a8018c6c9992796b256d 13], [http://git.kernel.org/linus/0940ebf6b92ea10a6f30ae5ac3993a3b75745da6 14], [http://git.kernel.org/linus/cfa4c961cc69ffb7bda450972320a25cbd413e19 15], [http://git.kernel.org/linus/ea67176ae8c024f64d85ec33873e5eadf1af7247 16], [http://git.kernel.org/linus/19a39dce3b9bf0244d19a446718ad6f7605ff099 17], [http://git.kernel.org/linus/a7e99c691af553fc15ac46a51f130b7c59a65f76 18], [http://git.kernel.org/linus/837d5b6e46d1a4af5b6cc8f2fe83cb5de79a2961 19], [http://git.kernel.org/linus/de322263d3a6d4ffd4ed7c4d0c6536e9497aec9b 20)] '''Improved debugging''' Btrfs has a new debugging utility, "integrity check", aimed at developers. The tool consist in a extra integrity test that for every write request checks that the filesystem is not writting to the disk bogus references that could left the file system in an inconsistent state that would cause data loss. This tool will help Btrfs developers to find bugs more easily. Code: [http://git.kernel.org/linus/5db0276014b80484689eb6c1bf7b94af1c7d5b1a (commit 1], [http://git.kernel.org/linus/c975dd469d748ce619c510050d4fb407c2398591 2], [http://git.kernel.org/linus/21adbd5cbb5344a3fca6bb7ddb2ab6cb03c44546 3)] == Open vSwitch == Recommended LWN article: [https://lwn.net/Articles/469775/ Routing Open vSwitch into the mainline] Open vSwitch is a software implementation of a multilayer network switch. This project has existed for years and it's now being merged in the main tree. Linux already has a virtual switch (the Linux bridge), but Open vSwitch is designed for more complex scenearios, and specially to be used as a vswitch in virtualized server environments (read the document "[http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=blob_plain;f=WHY-OVS;h=ac9a3815a1a00ca3ad024bfb7d6652a040de8899;hb=HEAD Why Open vSwitch?]" Open vSwitch supports standard management interfaces (e.g. sFlow, Netflow, RSPAN, CLI), and is open to programmatic extension and control using Openflow and the OVSDB management protocol, and it is designed to be compatible with modern switching chipsets. See [http://openvswitch.org openvswitch.org] for more information and userspace utilities. Code: [http://git.kernel.org/linus/ccb1352e76cff0524e7ccb2074826a092dd13016 (commit)] == Better bonding of network interfaces: teaming == There is a new "teaming" network device, which is intended to be a fast, scalable, clean, userspace-driven replacement for the bonding driver. It allows to create virtual interfaces that teams together multiple ethernet devices. This is typically used to increase the maximum bandwidth and provide redundancy. Currently round-robin and active-backup modes are implemented. The libteam userspace library with couple of demo apps is available at [https://github.com/jpirko/libteam github.com/jpirko/libteam] Code: [http://git.kernel.org/linus/3d249d4ca7d0ed6629a135ea1ea21c72286c0d80 (commit)] == Bufferbloat fighting: Byte queue limits == Recommended LWN article: [https://lwn.net/Articles/454390/ Network transmit queue limits] "[http://en.wikipedia.org/wiki/Bufferbloat#cite_note-7 Bufferbloat]" is a term used to describe the latency and throughput problems caused by excessive buffering trough the several elements of a network connection. Some tools are being developed to help to alleviate these problems, and this feature is one of them. Byte queue limits are a configurable limit of packet data that can be put in the transmission queue of a network device. As a result one can tune things such that high priority packets get serviced with a reasonable amount of latency whilst not subjecting the hardware queue to emptying when data is available to send. Configuration of the queue limits is in the tx- sysfs directory for the queue under the byte_queue_limits directory. Code: [http://git.kernel.org/linus/75957ba36c05b979701e9ec64b37819adc12f830 (commit 1], [http://git.kernel.org/linus/7346649826382b769cfadf4a2fe8a84d060c55e9 2], [http://git.kernel.org/linus/c5d67bd78c5dc540e3461c36fb3d389fbe0de4c3 3], [http://git.kernel.org/linus/927fbec13e40648d3c87cbb1daaac5b1fb9c8775 4], [http://git.kernel.org/linus/114cf5802165ee93e3ab461c9c505cd94a08b800 5)] == Per-cgroup TCP buffer limits == Recommended LWN article: [https://lwn.net/Articles/470656/ Per-cgroup TCP buffer limits] This patch introduces memory pressure controls for the tcp protocol which allows to put limits to the size of the buffers used by the TCP code. Code: [http://git.kernel.org/linus/180d8cd942ce336b2c869d324855c40c5db478ad (commit 1], [http://git.kernel.org/linus/e1aab161e0135aafcd439be20b4f35e4b0922d95 2], [http://git.kernel.org/linus/d1a4c0b37c296e600ffe08edb0db2dc1b8f550d7 3], [http://git.kernel.org/linus/3dc43e3e4d0b52197d3205214fe8f162f9e0c334 4], [http://git.kernel.org/linus/3aaabe2342c36bf48567b88fa78b819eee14bb5e 5], [http://git.kernel.org/linus/5a6dd343770d2ae2c25f7a4b1998c091e6252f42 6], [http://git.kernel.org/linus/ffea59e50494198a0db4d6ad8f6721b8fd994f65 7], [http://git.kernel.org/linus/0850f0f5c54261a6236f013e8bac154bcce424d6 8)] == Network priority control group == The Network priority cgroup provides an interface to allow an administrator to dynamically set the priority of network traffic generated by various applications. Nominally, an application would set the priority of its traffic via the SO_PRIORITY socket option. This however, is not always possible. This cgroup allows an administrator to assign a process to a group which defines the priority of egress traffic on a given interface. More details in [http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/cgroups/net_prio.txt;hb=HEAD Documentation/cgroups/net_prio.txt] Code: [http://git.kernel.org/linus/5bc1421e34ecfe0bd4b26dc3232b7d5e25179144 (commit 1], [http://git.kernel.org/linus/3ee32fee65ef6a4a8a4188e913be7dd90ba9e058 2)] == Better Ext4 online resizing == This release supports a new online resizing ioctl. The new resizing lets kernel do all work, like allocating bitmaps and inode tables, it can support flex_bg and BLOCK_UNINIT features and it's [https://lwn.net/Articles/466299/ much faster]. Code: [http://git.kernel.org/linus/19c5246d251640ac76daa4d34165af78c64b1454 (commit)] == New architecture: TI C6X == Recommended LWN article: [https://lwn.net/Articles/457635/ Upcoming DSP architectures] The family of architectures that run on Linux has got even bigger with the addition of support for the Texas Instruments C6X. This architecture supports members of the Texas Instruments family of C64x single and multicore DSPs. The multicore DSPs do not support cache coherancy, so are not suitable for SMP. Also, these are no-mmu processors. This core architecture is VLIW with an instruction set optimized for DSP applications. For details on the processors, see the [http://processors.wiki.ti.com/index.php/Main_Page TI web page]. Also, the project website: [http://linux-c6x.org/ linux-c6x.org] Code: [http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=tree;f=arch/c6x;hb=HEAD (directory)] == EFI boot support == This release introduces an EFI boot stub that allows an x86 bzImage to be loaded and executed directly by EFI firmware. The bzImage appears to the firmware as an EFI application. Both BIOS and EFI boot loaders can still load and run the same bzImage, thereby allowing a single kernel image to work in any boot environment. Code: [http://git.kernel.org/linus/291f36325f9f252bd76ef5f603995f37e453fc60 (commit)] = Driver and architecture-specific changes = All the driver and architecture-specific changes can be found in the [http://kernelnewbies.org/Linux_3.3_DriverArch Linux_3.3_DriverArch page] = Various core changes = * Use jump labels to reduce overhead when the CFS bandwidth control group is disabled [http://git.kernel.org/linus/56f570e512eeb5b412cb3a62234adc446a8eb32b (commit)] * modules: sysfs - export: taint, coresize, initsize [http://git.kernel.org/linus/cca3e707301862ca9b9327e6a732463982f8cd1b (commit)] * Add BLKROTATIONAL ioctl, hich permits applications to query whether a block device is rotational [http://git.kernel.org/linus/ef00f59c95fe6e002e7c6e3663cdea65e253f4cc (commit)] * selftests: new very basic kernel selftests directory [http://git.kernel.org/linus/274343ad3e63c4dcee6744a75b5553940de4a0f6 (commit)] * proc filesystem * Add hidepid= and gid= mount options. hidepid=0 means classic mode - everybody may access all /proc// directories (default). hidepid=1 means users may not access any /proc// directories but their own. hidepid=2 means hidepid=1 plus all /proc// will be fully invisible to other users. gid= defines a group authorized to learn processes information otherwise prohibited by hidepid= [http://git.kernel.org/linus/0499680a42141d86417a8fbaa8c8db806bea1201 (commit)] * Introduce the /proc//map_files/ directory. This one behaves similarly to the /proc//fd/ one - it contains symlinks one for each mapping with file, the name of a symlink is "vma->vm_start-vma->vm_end", the target is the file. Opening a symlink results in a file that point exactly to the same inode as them vma's one [http://git.kernel.org/linus/640708a2cff7f81e246243b0073c66e6ece7e53e (commit)] * Parse mount options [http://git.kernel.org/linus/97412950b10e64f347aec4a9b759395c2465adf6 (commit)] * Add a per-pci-device subdirectory in sysfs called: /sys/bus/pci/devices//msi_irqs. This sub-directory exports the set of msi vectors allocated by a given pci device, by creating a numbered sub-directory for each vector beneath msi_irqs. Currently the only attribute is called mode, which tracks the operational mode of that vector (msi vs. msix) [http://git.kernel.org/linus/da8d1c8ba4dcb16d60be54b233deca9a7cac98dc (commit)] * Add an "archheaders" build target [http://git.kernel.org/linus/052ad274964e613a12bf8ce7c5631f70d0bc82cc (commit)] * Implement 'sysdev' classes and devices, for "system" devices and buses. It will allow to use udev with them [http://git.kernel.org/linus/ca22e56debc57b47c422b749c93217ba62644be2 (commit)] * Add a few /proc entries and prctl() codes to future checkpoint/restart support [http://git.kernel.org/linus/067bce1a06c1f84146f873a598cd7c3a28eee1d5 (commit 1], [http://git.kernel.org/linus/b3f7f573a20081910e34e99cbc91831f4f02f1ff 2], [http://git.kernel.org/linus/028ee4be34a09a6d48bdf30ab991ae933a7bc036 3)] = File systems = * Btrfs * Rewrite block group trimming, it had a few bugs, including not trimming some parts of the disk [http://git.kernel.org/linus/7fe1e641502616220437079258506196bc4d8cbf (commit)] * Revamp clustered allocation logic [http://git.kernel.org/linus/1bb91902dc90e25449893e693ad45605cb08fbe5 (commit)] * Use larger system chunks [http://git.kernel.org/linus/96bdc7dc61fb1b1e8e858dafb13abee8482ba064 (commit)] * GFS2 * dlm based recovery coordination [http://git.kernel.org/linus/e0c2a9aa1e68455dc3439e95d85cabcaff073666 (commit)] * Move toward a generic multi-block allocator [http://git.kernel.org/linus/6e87ed0fc93ffbe2aec296e6912b1dcb19034d6c (commit)] * FUSE * Notifying the kernel of deletion [http://git.kernel.org/linus/451d0f599934fd97faf54a5d7954b518e66192cb (commit)] * Support ioctl on directories [http://git.kernel.org/linus/b18da0c56e9ff43a007b6c8e302c62e720964151 (commit)] * NFSD: Added fault injection [http://git.kernel.org/linus/65178db42a02c7984f711614546e97e9952d8e01 (commit)] = Memory Management = * Memory control group naturalisation, reducing dramatically its memory overhead. Recommended [https://lwn.net/Articles/443241/ LWN article] [http://git.kernel.org/linus/9f3a0d0933de079665ec1b498947ffbf805b0018 (commit 1], [http://git.kernel.org/linus/89b5fae5368f6aec62fb09c8e19b6c61f1154603 2], [http://git.kernel.org/linus/527a5ec9a53471d855291ba9f1fdf1dd4e12a184 3], [http://git.kernel.org/linus/f16015fbf2f6ac45505d6ad21455ff9f6c14473d 4], [http://git.kernel.org/linus/5660048ccac8735d9bc0a46325a02e6a6518b5b2 5], [http://git.kernel.org/linus/ad2b8e601099a23dffffb53f91c18d874fe98854 6], [http://git.kernel.org/linus/b95a2f2d486d0d768a92879c023a03757b9c7e58 7], [http://git.kernel.org/linus/6290df545814990ca2663baf6e894669132d5f73 8], [http://git.kernel.org/linus/925b7673cce39116ce61e7a06683a4a0dad1e72a 9], [http://git.kernel.org/linus/6b208e3f6e35aa76d254c395bdcd984b17c6b626 10)] * Compaction combined with Transparent Huge Pages can cause significant stalls with USB sticks or browser. Recommended [https://lwn.net/Articles/467328/ LWN article] [http://git.kernel.org/linus/a77ebd333cd810d7b680d544be88c875131c2bd3 (commit 1], [http://git.kernel.org/linus/b16d3d5a5219d01e9be5e586e5d50fbf1ca955ea 2], [http://git.kernel.org/linus/5013473152d1ac9d44d787fb02edda845fdf2cb3 3], [http://git.kernel.org/linus/7335084d446b83cbcb15da80497d03f0c1dc9e21 4], [http://git.kernel.org/linus/b969c4ab9f182a6e1b2a0848be349f99714947b0 5], [http://git.kernel.org/linus/c82449352854ff09e43062246af86bdeb628f0c3 6], [http://git.kernel.org/linus/66199712e9eef5aede09dbcd9dfff87798a66917 7], [http://git.kernel.org/linus/a6bc32b899223a877f595ef9ddc1e89ead5072b8 8], [http://git.kernel.org/linus/fe4b1b244bdb96136855f2c694071cb09d140766 9], [http://git.kernel.org/linus/0cee34fd72c582b4f8ad8ce00645b75fb4168199 10)] * There is a limit to the maximum number of dirty pages that exist in the system at any time. However, the per-zone page allocator can fill one zone while other zones are spared. Implement per-zone dirty limits to distribute pages fairly across zones [http://git.kernel.org/linus/a756cf5908530e8b40bdf569eb48b40139e8d7fd (commit)] * Introduce slab_max_order kernel parameter. It determines the maximum allowed order for slabs. A high setting may cause OOMs due to memory fragmentation [http://git.kernel.org/linus/3df1cccdfb3fab6aa9176beb655d802eb384eabc (commit)] * More intensive memory corruption debugging [http://git.kernel.org/linus/c0a32fc5a2e470d0b02597b23ad79a317735253e (commit)] * Writeback * A large number of short-lived dirtiers (eg. gcc instances in a fast kernel build) may starve long-run dirtiers (eg. dd) as well as pushing the dirty pages to the global hard limit. The solution is to charge the pages dirtied by the exited gcc to the other random dirtying tasks. It sounds not perfect, however should behave good enough in practice [http://git.kernel.org/linus/54848d73f9f254631303d6eab9b976855988b266 (commit)] * Control the pause time and the call intervals to balance_dirty_pages() (see commit for more details) [http://git.kernel.org/linus/7ccb9ad5364d6ac0c803096c67e76a7545cf7a77 (commit)] * Avoid dirty tasks getting too much throttling when doing sequential writes smaller than a page [http://git.kernel.org/linus/d3bc1fef9389e409a772ea174a5e41a6f93d9b7b (commit)], [http://git.kernel.org/linus/32c7f202a4801252a0f3578807b75a961f792870 (commit)] * Compensate the task's think time when computing the final pause time [http://git.kernel.org/linus/83712358ba0a1497ce59a4f84ce4dd0f803fe6fc (commit)] * Help to reduce dirty throttling polls and hence CPU overheads. [http://git.kernel.org/linus/82791940545be38810dfd5e03ee701e749f04aab (commit)] * The LKP tests see big 56% regression for the case fio_mmap_randwrite_64k. Avoid tiny dirty poll to restore most performance [http://git.kernel.org/linus/5b9b357435a51ff14835c06d8b00765a4c68f313 (commit)] = Networking = * Support the socket monitoring interface used by the ss tool in UNIX sockets [http://git.kernel.org/linus/22931d3b906cd0a1726a49a09713f9220a5fab8a (1] ,[http://git.kernel.org/linus/45a96b9be6ec1b7d248642d17ceee59ff5f64451 2], [http://git.kernel.org/linus/5d3cae8bc39dd38d1aa5fd4bbc788c7b43fcaa71 3], [http://git.kernel.org/linus/f5248b48a64c221dd6157ab9cbee5a36ee45e6ed 4], [http://git.kernel.org/linus/5f7b0569460b7d8d01ca776430a00505a68b7584 5], [http://git.kernel.org/linus/ac02be8d96af9f66a4de86781ee9facc2dff99d4 6], [http://git.kernel.org/linus/2aac7a2cb0d9d8c65fc7dde3e19e46b3e878d23d 7], [http://git.kernel.org/linus/cbf391958afb9b82c72324a15891eb3102200085 8], [http://git.kernel.org/linus/5d531aaa64a06622874f06e5068b8eefca048feb 9)] * Support for the SCSI RDMA Protocol (SRP) Target driver. The SRP protocol is a protocol that allows an initiator to access a block storage device on another host (target) over a network that supports the RDMA protocol. Currently the RDMA protocol is supported by InfiniBand and by iWarp network hardware. More information about the SRP protocol can be found on [http://www.t10.org/ the website of the INCITS T10 technical committee] [http://git.kernel.org/linus/a42d985bd5b234da8b61347a78dc3057bf7bb94d (commit)] * Implementation for the NFC Logical Link Controller protocol. It's also known as NFC peer to peer mode [http://git.kernel.org/linus/d646960f7986fefb460a2b062d5ccc8ccfeacc3a (commit)] * 6LoWPAN: add fragmentation support [http://git.kernel.org/linus/719269afbc69ab96339aad6c2d3b32f7d8311146 (commit)], UDP header compression [http://git.kernel.org/linus/3bd5b958c2a2dd1a9b4c8d21e75fb47b062fc941 (commit)], UDP header decompression [http://git.kernel.org/linus/f8b1b5d231c6db03f87e9db195530156fde47c4b (commit)] * neigh: new unresolved queue limits: deprecate neigh/default/unres_qlen, replace it with unres_qlen_bytes [http://git.kernel.org/linus/8b5c171bb3dc0686b2647a84e990199c5faa9ef8 (commit)] * CAIF USB support [http://git.kernel.org/linus/7ad65bf68d705b445ef10b77ab50dab22be185ee (commit)] * Netfilter * Add extended accounting infrastructure over nfnetlink, which aims to allow displaying real-time traffic accounting without the need of complicated and resource-consuming implementation in user-space [http://git.kernel.org/linus/9413902796f56f6209e19dd54e840ed46950612c (commit)] * Add nfacct match to support extended accounting [http://git.kernel.org/linus/ceb98d03eac5704820f2ac1f370c9ff385e3a9f5 (commit)] * Add "rpfilter" reverse path filter match support, allows to match packets whose replies would go out via the interface the packet came in [http://git.kernel.org/linus/8f97339d3feb662037b86a925e692017c0b32323 (commit)], [http://git.kernel.org/linus/e26f9a480fb6c1b614660e824d69a74e2ce990f3 (commit)] * Packet scheduler * Adaptative RED AQM for linux, based on [http://icir.org/floyd/papers/adaptiveRed.pdf paper from Sally FLoyd, Ramakrishna Gummadi, and Scott Shenker] [http://git.kernel.org/linus/8af2a218de38f51ea4b4fa48cac1273319ae260c (commit)] * Add an optional RED on top of SFQ [http://git.kernel.org/linus/18cb809850fb499ad9bf288696a95f4071f73931 (commit)], [http://git.kernel.org/linus/ddecf0f4db44ef94847a62d6ecf74456b4dcc66f (commit)] * vlan: add 802.1q netpoll support[http://git.kernel.org/linus/6d4cdf47d2cc9d40227c67c79a4942e36ed1b0ba (commit)] * bridge: add NTF_USE support[http://git.kernel.org/linus/292d1398983f3514a0eab13b7606df7f4730b498 (commit)] * Add wireless TX status socket option [http://git.kernel.org/linus/6e3e939f3b1bf8534b32ad09ff199d88800835a0 (commit)] = Virtualization = * KVM: Expose a version 2 architectural PMU (Performance Monitoring Unit) to a guest [http://git.kernel.org/linus/f5132b01386b5a67f1ff673bb2b96a507a3f7e41 (commit)] * Xen * Add privcmd device driver [http://git.kernel.org/linus/d8414d3c157dc1f83e73c17447ba41fe5afa9d3d (commit)] * Add xenbus_backend device [http://git.kernel.org/linus/2fb3683e7b164ee2b324039f7c9d90fe5b1a259b (commit)] * Add xenbus device driver [http://git.kernel.org/linus/e9f0fec3f5d406c500861da779d16a779a110055 (commit)] = Crypto = * caam - add support for MD5 algorithm variants[http://git.kernel.org/linus/8b4d43a4e774c02dee359c7931e47b119143f367 (commit)] * Digital signature verification support[http://git.kernel.org/linus/15647eb3985ef30dfd657038924dc85c03026733 (commit)] * Multiprecision maths library from GnuPG: used to implement RSA digital signature verification, which is used by IMA/EVM digital signature extension [http://git.kernel.org/linus/cdec9cb5167ab1113ba9c58e395f664d9d3f9acb (commit 1], [http://git.kernel.org/linus/5ce3e312ec5c11abce13215be70700778bf601f0 2], [http://git.kernel.org/linus/d9c46b184fcfd33c85a7dc48a653435a08e21f56 3], [http://git.kernel.org/linus/7e8dec918ef8e0f68b4937c3c50fa57002077a4d 4)] * serpent - add 4-way parallel i586/SSE2 assembler[http://git.kernel.org/linus/251496dbfc1be38bc43b49651f3d33c02faccc47 (commit)], add 8-way parallel x86_64/SSE2 assembler[http://git.kernel.org/linus/937c30d7f560210b0163035edd42b2aef78fed9e (commit)] * serpent-sse2 - add lrw support[http://git.kernel.org/linus/18482053f92b099663bd36a10e8f6bd2c8544669 (commit)], add xts support[http://git.kernel.org/linus/5962f8b66dd040ad89d55b58967ea2dec607f4d3 (commit)] * talitos - add hmac algorithms[http://git.kernel.org/linus/79b3a418e090248d00ceba40b81da9dfac753367 (commit)] * twofish-x86_64-3way - add xts support[http://git.kernel.org/linus/81559f9ad3d88c033e4ec3b6468012dbfda3b31d (commit)] = Security = * audit * Allow audit matching on inode gid [http://git.kernel.org/linus/54d3218b31aee5bc9c859ae60fbde933d922448b (commit)] * Allow interfield comparison between gid and ogid [http://git.kernel.org/linus/c9fe685f7a17a0ee8bf3fbe51e40b1c8b8e65896 (commit)] * Allow interfield comparison in audit rules [http://git.kernel.org/linus/02d86a568c6d2d335256864451ac8ce781bc5652 (commit)] * Allow matching on obj_uid [http://git.kernel.org/linus/efaffd6e4417860c67576ac760dd6e8bbd15f006 (commit)] * evm: digital signature verification support[http://git.kernel.org/linus/15647eb3985ef30dfd657038924dc85c03026733 (commit)] = Tracing/profiling = * perf * report: Accept fifos as input file, making possible to use commands like "perf record -a -e cpu-cycles sleep 2 | perf report | cat" [http://git.kernel.org/linus/efad14150a0b4429f37da7245001a8096ef7ee38 (commit)] * script: Implement option for system-wide profiling [http://git.kernel.org/linus/317df650c588bb9091b1fa0b5d726fe485aad88e (commit)] ---- CategoryReleases