#pragma section-numbers on #pragma keywords Linux, kernel, operating system, changes, changelog, file system, Linus Torvalds, open source, device drivers #pragma description Summary of the changes and new features merged in the Linux kernel during the 3.11 development cycle Linux 3.11 /!\ /!\ /!\ HAS NOT BEEN RELEASED /!\ /!\ /!\ '''Summary''': This release adds support for , new drivers and many small improvements. [[TableOfContents()]] = Prominent features = = Drivers and architectures = All the driver and architecture-specific changes can be found in the [http://kernelnewbies.org/Linux_3.11-DriversArch Linux_3.11-DriversArch page] = Core = * Add support for LZ4 compressed kernels [http://git.kernel.org/linus/cffb78b0e0b3a30b059b27a1d97500cf6464efa9 (commit)], [http://git.kernel.org/linus/c72ac7a1a926dbffb59daf0f275450e5eecce16f (commit)], [http://git.kernel.org/linus/e76e1fdfa8f8dc1ea6699923cf5d92b5bee9c936 (commit)] '' locking '' * RCU: Remove TINY_PREEMPT_RCU [http://git.kernel.org/linus/127781d1ba1ee5bbe1780afa35dd0e71583b143d (commit)] * tools/cpupower: Implement disabling of cstate interface [http://git.kernel.org/linus/0924c369bc5492cf181a066fc2d459aa18ffa5ac (commit)], add Haswell family 0x45 specific idle monitor to show PC8,9,10 states [http://git.kernel.org/linus/7ee767b69b6885dd81bafaf1881c5028033a6177 (commit)] * Allow mmap's MAP_HUGETLB for hugetlbfs files [http://git.kernel.org/linus/493af578040e690f93f0fc8d9e7667ffff8155bb (commit)] * timers: Allow the unbinding of clockevents/clocksources, provide sysfs interfaces for allow the unbinding [http://git.kernel.org/linus/03e13cf5ee60584fe0c831682c67212effb7fca4 (commit)], [http://git.kernel.org/linus/501f867064e95f9a6f540e60705be0937280e7ec (commit)], [http://git.kernel.org/linus/7eaeb34305dee26634f7c98ae62646da5cebe91d (commit)] * Implement generic percpu refcounting [http://git.kernel.org/linus/215e262f2aeba378aa192da07c30770f9925a4bf (commit)] * Tune vm_committed_as per-cpu counter [http://git.kernel.org/linus/917d9290af749fac9c4d90bacf18699c9d8ba28d (commit)] = Memory management = '' Memory control group '' = Block layer = * bcache: Raid 5/6 optimizations [http://git.kernel.org/linus/72c270612bd33192fa836ad0f2939af1ca218292 (commit)] * Device-Mapper: add switch target. This target creates a device that supports an arbitrary mapping of fixed-size regions of I/O across a fixed set of paths [http://git.kernel.org/linus/9d0eb0ab432aaa9160cf2675aee73b3900b9bc18 (commit)] * Device Mapper: Add ability to restore transiently failed devices on resume [http://git.kernel.org/linus/9092c02d943515b3c9ffd5d0003527f8cc1dd77b (commit)] * blkio cgroup controller: implement proper hierarchy support [http://git.kernel.org/linus/9138125beabbb76b4a373d4a619870f6f5d86fc5 (commit)] * Add AIX partition table support [http://git.kernel.org/linus/6ceea22bbbc84fcf6bf0913bb3db8a657e9002f6 (commit)] * md/raid5: allow 5-device RAID6 to be reshaped to 4-device. [http://git.kernel.org/linus/fdcfbbb653b27964c4daa4d2bcb364259c257e7d (commit)] = File systems = '' XFS '' * Disable speculative preallocation for small files, as it causes freespace fragmentation [http://git.kernel.org/linus/133eeb1747c33b6d75483c074b27d4e5e02286dc (commit)] * Currently userspace has no way of determining that a filesystem is CRC enabled. Add a flag to the XFS_IOC_FSGEOMETRY ioctl output to indicate that the filesystem has v5 superblock support enabled [http://git.kernel.org/linus/74137fff067961c9aca1e14d073805c3de8549bd (commit)] * Inode create transaction [http://git.kernel.org/linus/28c8e41af693e4b5cd2d68218f144cf40ce15781 (commit)], [http://git.kernel.org/linus/3ebe7d2d73179c4874aee4f32e043eb5acd9fa0f (commit)], [http://git.kernel.org/linus/b8402b4729495ac719a3f532c2e33ac653b222a8 (commit)] * Ordered log vector support: It allows to write metadata without physically logging every individual change but still maintain the full transactional integrity guarantees [http://git.kernel.org/linus/5f6bed76c0c85cb4d04885a5de00b629deee550b (commit)], [http://git.kernel.org/linus/fd63875cc4cd60b9e5c609c24d75eaaad3e6d1c4 (commit)] * Disable swap extents ioctl on CRC enabled filesystems [http://git.kernel.org/linus/02f75405a75eadfb072609f6bf839e027de6a29a (commit)] * Disable noattr2/attr2 mount options for CRC enabled filesystems, as they are always enabled in them [http://git.kernel.org/linus/d3eaace84e40bf946129e516dcbd617173c1cf14 (commit)] ''EXT4'' * Avoid issuing empty commits unnecessarily [http://git.kernel.org/linus/9ff864462477206bc23b405a6ae506e92fb6dc9c (commit)] * Make punch hole work with bigalloc mode [http://git.kernel.org/linus/d23142c6271c499d913d0d5e668b5a4eb6dafcb0 (commit)] * The common writepages code path is now used for the nodelalloc and ext3 compatibility modes. This allows big writes to be submitted much more efficiently as a single bio request, instead of being sent as individual 4k writes [http://git.kernel.org/linus/20970ba65d5a22f2e4efbfa100377722fde56935 (commit)] * The extent cache shrink mechanism, which was introduce in 3.9, no longer has a scalability bottleneck caused by the i_es_lru spinlock [http://git.kernel.org/linus/d3922a777f9b4c4df898d326fa940f239af4f9b6 (commit)] '' Btrfs '' * Show compiled-in config features at module load time [http://git.kernel.org/linus/85965600f50b2e57746363d0ace4ab6b2bcb9c27 (commit)] * Remove btrfs_sector_sum structure, it improved the performance in a dd benchmark by ~74% on a SSD (31MB/s -> 54MB/s) [http://git.kernel.org/linus/f51a4a1826ff810eb9c00cadff8978b028c40756 (commit)] '' F2FS '' * Add remount support [http://git.kernel.org/linus/696c018c7718f5e33e1107da19c4d64a25018878 (commit)] * Support xattr security labels [http://git.kernel.org/linus/8ae8f1627f39bae505b90cade50cd8a911b8bda6 (commit)] '' GFS2 '' * Add atomic open support whose main benefit will be the reduction in locking overhead in case of combined lookup/create and open operations[http://git.kernel.org/linus/6d4ade986f9c8df31e68fd30643997f79cc5a5f8 (commit)] '' CIFS '' * Add SMB3.02 dialect support [http://git.kernel.org/linus/20b6d8b42e7e7c9af5046fe525d6709e10d14992 (commit)] * SMB3 Signing enablement [http://git.kernel.org/linus/429b46f4fdaf9c9007b7c0fc371b94e40c3764b2 (commit)] * Handle big endianness in NTLM (ntlmv2) authentication [http://git.kernel.org/linus/fdf96a907c1fbb93c633e2b7ede3b8df26d6a4c0 (commit)] * SMB2 FSCTL and IOCTL requests[http://git.kernel.org/linus/4a72dafa19ba77a2fb77ae676f8e3a0d6077c37c (commit)] * Add a "nosharesock" mount option to force new sockets to server to be created [http://git.kernel.org/linus/a0b3df5cf1fc46ad885bbc5c9f56ff0f4877beb5 (commit)] '' HPFS '' * Implement prefetch to improve performance [http://git.kernel.org/linus/275f495dbe34300d793466a7d96c70f83fbae1bc (commit)] '' FAT '' * Add FAT_IOCTL_GET_VOLUME_ID [http://git.kernel.org/linus/6e5b93ee55d401f1619092fb675b57c28c9ed7ec (commit)] '' NILFS2 '' * Implement calculation of free inodes count [http://git.kernel.org/linus/c7ef972c440fc9f1eda28b450cd30ad15c4d60cf (commit)] = Networking = * sit: add IPv4 over IPv4 support [http://git.kernel.org/linus/32b8a8e59c9c8fa56051d6e9ab2924e469ac4d92 (commit)] * 9p: Make 9P2000.L the default protocol for 9p file system [http://git.kernel.org/linus/095e7999c09afa09345db864427cb4bb4c98ae1c (commit)] * 9p: add privport option to 9p tcp transport [http://git.kernel.org/linus/2f28c8b31dc501027d9aa6acf496c5941736312b (commit)] * Add VF link state control [http://git.kernel.org/linus/1d8faf48c74b8329a0322dc4b2a2030ae5003c86 (commit)] * ipv6: add support of peer address [http://git.kernel.org/linus/caeaba79009c2ee858c3b2bf8caf922cd719fead (commit)] * mac80211: add support for per-chain signal strength reporting [http://git.kernel.org/linus/ef0621e805f9ef76eaf31ce6205028fe467e9ca9 (commit)] * mac80211: enable Auth Protocol Identifier on mesh config. [http://git.kernel.org/linus/0d4261ad5d0028b26cd88e645b4507eed8aab3f7 (commit)] * gso: Update tunnel segmentation to support Tx checksum offload [http://git.kernel.org/linus/cdbaa0bb26d8116d00be24e6b49043777b382f3a (commit)] * Implement /proc/net/icmp6. [http://git.kernel.org/linus/d862e546142328d18377a4704be97f2ae301847a (commit)] * bridge: Add a flag to control unicast packet flood. [http://git.kernel.org/linus/867a59436fc35593ae0e0efcd56cc6d2f8506586 (commit)] * netfilter: Implement RFC 1123 for FTP conntrack [http://git.kernel.org/linus/4e7dba99c9e606e304f104ce4071d8b5ba93957e (commit)] * nl80211: Add generic netlink module alias for cfg80211/nl80211 [http://git.kernel.org/linus/fb4e156886ce6e8309e912d8b370d192330d19d3 (commit)] * openvswitch: Add gre tunnel support. [http://git.kernel.org/linus/aa310701e787087dbfbccf1409982a96e16c57a6 (commit)] * openvswitch: Add tunneling interface. [http://git.kernel.org/linus/7d5437c709ded4f152cb8b305d17972d6707f20c (commit)] * packet: nlmon: virtual netlink monitoring device for packet sockets [http://git.kernel.org/linus/e4fc408e0e99fd2e009c8b3702d9637f5554fd5c (commit)] * xfrm: add LINUX_MIB_XFRMACQUIREERROR statistic counter [http://git.kernel.org/linus/4c4d41f200db375b2d2cc6d0a1de0606c8266398 (commit)] * RDMA * cma: Define native IB address [http://git.kernel.org/linus/8d36eb01da5d371feffa280e501377b5c450f5a5 (commit)] * ucma: Allow user space to bind to AF_IB [http://git.kernel.org/linus/eebe4c3a62aadb64ba30bde97b96d656e369d934 (commit)] * ucma: Allow user space to pass AF_IB into resolve [http://git.kernel.org/linus/209cf2a751f9ff2a516102339e54fcac0176fa78 (commit)] * ucma: Allow user space to specify AF_IB when joining multicast [http://git.kernel.org/linus/5bc2b7b397b02026a0596a7807443a18422733fa (commit)] * ucma: Support querying for AF_IB addresses [http://git.kernel.org/linus/ee7aed4528fb3c44a36abd79eb23fd5401a5b697 (commit)] * NFC * Add NCI over SPI receive [http://git.kernel.org/linus/391d8a2da787257aeaf952c974405b53926e3fb3 (commit)] * Add NCI over SPI send [http://git.kernel.org/linus/ee9596d467e4d05c77a8c883aeeb5b74d1a3cd31 (commit)] * Add a nfc hardware simulation driver [http://git.kernel.org/linus/7cbe0ff3e475b7268ad9b55057048b2299fd60e0 (commit)] * Add basic NCI over SPI [http://git.kernel.org/linus/8a00a61b0ef2bfd1b468dd20c0d0b1a94a8f7475 (commit)] * Add firmware upload netlink command [http://git.kernel.org/linus/9674da8759df0d6c0d24e1ede6e2a1acdef91e3c (commit)] * MPLS: Add limited GSO support [http://git.kernel.org/linus/0d89d2035fe063461a5ddb609b2c12e7fb006e44 (commit)] = Crypto = * sha256_ssse3: add sha224 support [http://git.kernel.org/linus/a710f761fc9ae5728765a5917f8beabb49f98483 (commit)] * sha512_ssse3: add sha384 support [http://git.kernel.org/linus/340991e30ccef7b983cf2814ecea610504f5d059 (commit)] * Add lz4 Cryptographic API [http://git.kernel.org/linus/0ea8530dcf762526459b29ac713a623b51fd691f (commit)] * crct10dif: Accelerated CRC T10 DIF computation with PCLMULQDQ instruction [http://git.kernel.org/linus/31d939625a9a20b1badd2d4e6bf6fd39fa523405 (commit)], [http://git.kernel.org/linus/0b95a7f85718adcbba36407ef88bba0a7379ed03 (commit)] * dcp: support for Freescale's DCP co-processor [http://git.kernel.org/linus/519d8b1a9d81be7e4ffad8aa6b0e3ea03984bb86 (commit)] = Virtualization = '' KVM '' '' virtio '' '' hv '' * vmbus: Implement multi-channel support [http://git.kernel.org/linus/e68d2971d26577b932a16333ce165af98a96e068 (commit)] = Security = '' Smack '' * Local IPv6 port based controls [http://git.kernel.org/linus/c673944347edfd4362b10eea11ac384a582b1cf5 (commit)] * Add smkfstransmute mount option. It complements the smkfsroot option but also marks the root inode as transmutting [http://git.kernel.org/linus/e830b39412ca2bbedd7508243f21c04d57ad543c (commit)] '' Apparmor '' * Remove "permipc" command [http://git.kernel.org/linus/4b7c331fc2eceaa4da5ded41c0b2eca3fd924444 (commit)] = Tracing/perf = '' perf '' * Add --percent-limit option in perf report and perf top for not showing small overhead entries in the output; also, a report.percent-limit config variable [http://git.kernel.org/linus/064f19815c4e99e8b22bc3c5f4d7f4e0b96d226a (commit)], [http://git.kernel.org/linus/fa5df94350510571cbe825f333996f57223b3cd2 (commit)], [http://git.kernel.org/linus/eec574e6bc3ee4558d4a282e0e3e1bd6dd0ad67b (commit)] * Add sysfs entry /sys/device/xxx/perf_event_mux_interval_ms to ajust the multiplexing interval per PMU. The unit is milliseconds [http://git.kernel.org/linus/62b8563979273424d6ebe9201e34d1acc133ad4f (commit)] * perf record: Remove -A/--append option, it's no longer working and needed [http://git.kernel.org/linus/563aecb2e63a16f86c7daabfdcfee23f3e7c5955 (commit)] = Other news sites that track the changes of this release = * LWN: [https://lwn.net/Articles/557314/ The 3.11 merge window opens], [https://lwn.net/Articles/558126/ 3.11 merge window part 2], [https://lwn.net/Articles/558940/ The 3.11 merge window closes] ---- CategoryReleases