Linux 4.0 [https://lkml.org/lkml/2015/4/12/178 has been released] on Sun, 12 Apr 2015.
This page is not complete. It will be completed in the next few days. Meanwhile, you can read about Linux 4.0 in other sites:
LWN: [http://lwn.net/Articles/632761/ The merge window opens], [http://lwn.net/Articles/633096/ merge window part 2], [http://lwn.net/Articles/634471/ The end of the 4.0 merge window]
1. File systems
- UBIFS
Add security.* XATTR support for the UBIFS [http://git.kernel.org/linus/d7f0b70d30ffb9bbe6b8a3e1035cf0b79965ef53 commit]
Add xattr support for symlinks [http://git.kernel.org/linus/895d9db253a0b0b1f8a6e635fb2460d80bf72d5a commit]
2. Block
loop: Add blk-mq support, which greatly improves performance for sequential and random reads [http://git.kernel.org/linus/b5dd2f6047ca108001328aac0e8588edd15f1778 commit]
UBI: Add blk-mq support [http://git.kernel.org/linus/ff1f48ee3bb3af226f1f8993af0103794b4d4eab commit]
UBI: Implement UBI_METAONLY, a new open mode for UBI volumes, it indicates that only meta data is being changed [http://git.kernel.org/linus/fafdd2bf2638157670f28462b641150d16dbaeca commit]
3. Virtualization
vmxnet3: Make Rx ring 2 size configurable by adjusting rx-jumbo parameter of ethtool -G [http://git.kernel.org/linus/53831aa12538f8753fb77b7ab6408cce54973b30 commit]
4. Cryptography
aesni: Add support for 192 & 256 bit keys to AESNI RFC4106 [http://git.kernel.org/linus/e31ac32d3bc27c33f002e0c9ffd6ae08b65474e6 commit]
algif_rng: add random number generator support [http://git.kernel.org/linus/5afdfd22e6ba2260129a2a7113ab0916339c4205 commit]
octeon: add MD5 module [http://git.kernel.org/linus/1953c22f53747035b28c36dbb337ac3c10902644 commit]
qat: add support for cbc(aes) ablkcipher [http://git.kernel.org/linus/338e84f3a9740ab3582c8b6bc5a1a027794dac72 commit]
5. Security
Add security hooks to the Android binder that enable security modules such as SELinux to implement controls over binder IPC. The security hooks include support for controlling what process can become the binder context manager, invoke a binder transaction/IPC to another process, transfer a binder reference to another process , transfer an open file to another process. These hooks have been included in the Android kernel trees since Android 4.3 [http://git.kernel.org/linus/79af73079d753b2d04e46f7445716d3b5f914dbd commit]
Smack: secmark support for netfilter [http://git.kernel.org/linus/69f287ae6fc8357e0bc561353a2d585b89ee8cdc commit]
6. Networking
TCP: Add the possibility to define a per route/destination congestion control algorithm. This opens up the possibility for a machine with different links to enforce specific congestion control algorithms with optimal strategies for each of them based on their network characteristics [http://git.kernel.org/linus/81164413ad096bafe8ad1068f3f095a7dd081d8b commit]
Mitigate TCP "ACK loop" DoS scenarios by rate-limiting outgoing duplicate ACKs sent in response to incoming "out of window" segments. For more details, see [https://git.kernel.org/linus/f06535c599354816cfbc653ce8965804c7385c61 merge]. Code: [http://git.kernel.org/linus/032ee4236954eb214651cb9bfc1b38ffa8fd7a01 commit], [http://git.kernel.org/linus/a9b2c06dbef48ed31cff1764c5ce824829106f4f commit], [http://git.kernel.org/linus/f2b2c582e82429270d5818fbabe653f4359d7024 commit], [http://git.kernel.org/linus/4fb17a6091674f469e8ac85dc770fbf9a9ba7cc8 commit]
udpv6: Add lockless sendmsg() support, thus allowing multiple threads to send to a single socket more efficiently [http://git.kernel.org/linus/03485f2adcde0c2d4e9228b659be78e872486bbb commit]
ipv4: Automatically bring up DSA master network devices, which allows DSA slave network devices to be used as valid interfaces for e.g: NFS root booting by allowing kernel IP autoconfiguration to succeed on these interfaces [http://git.kernel.org/linus/728c02089a0e3eefb02e9927bfae50490f40e72e commit]
ipv6: Add sysctl entry(accept_ra_mtu) to disable MTU updates from router advertisements [http://git.kernel.org/linus/c2943f14534bdc4230f4da6dcd4ea03c5d8c8162 commit]
vxlan: Implement supports for the [https://tools.ietf.org/html/draft-smith-vxlan-group-policy Group Policy VXLAN extension] to provide a lightweight and simple security label mechanism across network peers based on VXLAN. It allows further mapping to a SELinux context using SECMARK, to implement ACLs directly with nftables, iptables, OVS, tc, etc [http://git.kernel.org/linus/3511494ce2f3d3b77544c79b87511a4ddb61dc89 commit]
vxlan: Add support for remote checksum offload in VXLAN. It is described [https://tools.ietf.org/html/draft-herbert-vxlan-rco-00 here]. [http://git.kernel.org/linus/dfd8645ea1bd91277f841e74c33e1f4dbbede808 commit]
net: openvswitch: Support masked set actions. [http://git.kernel.org/linus/83d2b9ba1abca241df44a502b6da950a25856b5b commit]
Infiniband: Add support for extensible query device capabilities verb to allow adding new features [http://git.kernel.org/linus/02d1aa7af17ef0e0655745ce32cab369ed040a67 commit]
Layer 2 Tunneling Protocol (l2tp): multicast notification to the registered listeners when the tunnels/sessions are created/modified/deleted [http://git.kernel.org/linus/33f72e6f0c67f673fd0c63a8182dbd9ffb8cf50b commit]
SUNRPC: Set SO_REUSEPORT socket option for TCP connections to bind multiple TCP connections to the same source address+port combination [http://git.kernel.org/linus/4dda9c8a5e34773b290c6b5938ccb36e7fcdf35c commit]
- bridge
offload bridge port attributes to switch asic if feature flag set [http://git.kernel.org/linus/68e331c785b85b78f4155e2ab6f90e976b609dc1 commit]
Support for allowing userspace to pack multiple vlans and vlan ranges in setlink and dellink requests for improved performance [http://git.kernel.org/linus/bdced7ef7838c1c4aebe9f295e44b7f0dcae2109 commit]
Add ability to enable TSO [http://git.kernel.org/linus/f902e8812ef657c6cf744ac25e21865217155460 commit]
- Near Field Communication (NFC)
HCI over NCI protocol support (Some secure elements only understand HCI and thus we need to send them HCI frames) [http://git.kernel.org/linus/11f54f228643d0248ec00ce8c9fb8d872f87e7b8 commit]
NCI NFCEE (NFC Execution Environment, typically an embedded or external secure element) discovery and enabling/disabling support [http://git.kernel.org/linus/8277f6937ae97c51ced5b54faa4934613c76999c commit], [http://git.kernel.org/linus/af9c8aa67d07adcd3b41fb2934af7af056eabecf commit], [http://git.kernel.org/linus/f7f793f31378d5e83276871339c2a8374b0e8657 commit], [http://git.kernel.org/linus/a41bb8448ebaebe1d0d9a268d340fad73c247e09 commit], [http://git.kernel.org/linus/4aeee6871e8c3b043ef02996db8ac70a1af8be92 commit], [http://git.kernel.org/linus/6095b0f07d9b1abd98484bc33b329e06a684115b commit], [http://git.kernel.org/linus/736bb9577407d3556d81c3c3cd57581cd3ae10ea commit]
NFC_EVT_TRANSACTION userspace API addition, it is sent through netlink in order for a specific application running on a secure element to notify userspace of an event [http://git.kernel.org/linus/447b27c4f29b510b98e99395120d635f009ed563 commit]
Tx timestamps are looped onto the error queue on top of an skb. This mechanism leaks packet headers to processes unless the no-payload options SOF_TIMESTAMPING_OPT_TSONLY is set. A new sysctl (tstamp_allow_data) optionally drops looped timestamp with data. This only affects processes without CAP_NET_RAW [http://git.kernel.org/linus/b245be1f4db1a0394e4b6eb66059814b46670ac3 commit], [http://git.kernel.org/linus/49ca0d8bfaf3bc46d5eef60ce67b00eb195bd392 commit], [http://git.kernel.org/linus/2368592365bc97e941d0c641a3ba24b06d2c469b commit]
tc: add BPF based action. This action provides a possibility to exec custom BPF code [http://git.kernel.org/linus/d23b8ad8ab23f5a18b91e2396fb63d10f66b08d6 commit]
net: sched: Introduce connmark action [http://git.kernel.org/linus/22a5dc0e5e3e8fef804230cd73ed7b0afd4c7bae commit]
Add Transparent Ethernet Bridging GRO support [http://git.kernel.org/linus/9b174d88c257150562b0101fcc6cb6c3cb74275c commit]
netdev: introduce new NETIF_F_HW_SWITCH_OFFLOAD feature flag for switch device offloads [http://git.kernel.org/linus/aafb3e98b27977148c8c86499684f8f5c3decfbb commit]
netfilter: nft_compat: add ebtables support [http://git.kernel.org/linus/5191f4d82daf22b7ee9446f83527d2795e225974 commit]
network namespace: Add rtnl cmd to add and get peer netns ids. A user can define an id for a peer netns by providing a FD or a PID. These ids are local to the netns where it is added (ie valid only into this netns) [http://git.kernel.org/linus/0c7aecd4bde4b7302cd41986d3a29e4f0b0ed218 commit], [http://git.kernel.org/linus/d37512a277dfb2cef8a578e25a3246f61399a55a commit]
openvswitch: Add support for checksums on UDP tunnels. [http://git.kernel.org/linus/b8693877ae016ac525d674d5d7a84ea0ea68ba60 commit]
openvswitch: Support VXLAN Group Policy extension [http://git.kernel.org/linus/1dd144cf5b4b47e12438c2c6883925ce1a9b499f commit]