As you can see in the table of contents, this page is partially complete. While the rest of the page is finished, you can read more information about this Linux release here:
LWN's merge window, part 1, part 2
Phoronix's The New & Improved Features Of The Linux 4.19 Kernel
Or check the merge list:
Contents
1. File systems
- BTRFS
- XFS
Remove deprecated barrier/nobarrier mount commit
- CIFS
- EXT4
- F2FS
Add fsync_mode=nobarrier mount option which gives an option to user where it skips issuing cache flush commands to underlying flash storage commit
Enable -o discard by default commit
Introduces a new mount option fault_type to assist old fault_injection commit
Support discard submission error injection commit
- FAT
Add FITRIM ioctl for FAT file system commit
- NFS
- OVERLAYFS
Delayed copy up of data. When file is on lower layer and only metadata is modified (except size), then only copy up the metadata and continue to use the data from the lower file until file is opened for writing. This optimization could be useful with containers and user namespaces, eg. doing chown() on whole image directory tree won't trigger a copy of the file's data, containers will continue sharing the page cache commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Stack file operations: this allows removal of several hacks from the VFS, proper interaction of read-only open files with copy-up, possibility to implement fs modifying ioctls properly, and others commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- PSTORE
Add zstd compression support commit
- UBIFS
2. Memory management
/proc/meminfo: add percpu populated pages count commit
huge pages microoptimization: Copy target sub-page last when copy huge page, because it is possible for the application to access the begin of the huge page after copying the huge page, and copying the target sub-page last will keep the CPU caches warm for the app commit, commit, commit, commit
Introduce a tiny implementation of cgroup-aware OOM killer, which adds an ability to kill a cgroup as a single unit and so guarantee the integrity of the workload. A new knob for cgroup v2 memory controller is added: memory.oom.group. The knob determines whether the cgroup should be treated as an indivisible workload by the OOM killer. If set, all tasks belonging to the cgroup or to its descendants (if the memory cgroup is not a leaf cgroup) are killed together or not at all. Incoming releases will improve this mechanism commit, commit, commit
3. Block layer
(FEATURED) Introduce blk-iolatency io controller, a latency based io controller for cgroups commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Separates block layer statistics for discards from writes. Discards are currently bundled with writes in the various /sys/block/*/stat files as well as in /proc/diskstats. The new discard statistics are appended to the current /sys/bloc/*/stat and /proc/diskstats on output such that they are the last four entries of each. These are analogous to the four read and write statistics commit, commit, commit, commit, commit, commit
dm integrity: Add the ability to store DM integrity metadata on a separate device. This feature is activated with the option meta_device:/dev/device commit, commit, commit, commit, commit, commit, commit, commit, commit
- rbd
null_blk: add zone support commit
4. Tracing and perf
perf: add key binding ('p') and option (--percent-type) for switching between local/global percentage in annotation output/browser. Local means % within symbol, global within the whole perf data commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
5. Virtualization
6. Security
kexec/firmware: support system wide policy requiring signatures. It allows the customer to define a policy which requires the kexec'ed kernel images, firmware, and/or kernel modules to be signed. In addition, this patch set includes the ability to configure a build time IMA policy, which is automatically loaded at run time without needing to specify it on the boot command line and persists after loading a custom kernel policy commit, commit, commit, commit, commit, commit, commit, commit
7. Networking
Support list based batching and stack traversal of socket buffers. It allows the network stack to receive a list of packets and process them as a unit, rather than handling each packet singly in sequence commit, commit, commit, commit, commit, commit, commit, commit, commit, merge
Maintain IP fragment queue in an rbtree, but optimize properly for in-order frags commit, commit, commit, commit, commit
Improve handling of ACKs on hole repairs commit, commit, commit, commit
- TCP
Add SNMP counter (LINUX_MIB_TCPZEROWINDOWDROP for zero-window drops commit
Add SNMP counter (LINUX_MIB_TCPRCVQDROP) for drops when try to queue in rcv queue commit
Adds 3 RFC4898 stats: tcpEStatsPerfHCDataOctetsOut, tcpEStatsPerfOctetsRetrans, tcpEStatsStackDSACKDups and an addtional stat to record the number of data packet reordering events seen, tcp_reord_seen commit, commit, commit, commit, commit
Make TCP_USER_TIMEOUT socket option more accurate commit, commit, commit
TIPC: Extend the existing TIPC socket diagnostics framework for information related to TIPC group communication commit
IPv4: Control socket buffer reprioritization after forwarding. After IPv4 packets are forwarded, the priority of the corresponding socket buffer is updated according to the TOS field of IPv4 header. This overrides any prioritization done earlier by e.g. an skbedit action or ingress-qos-map defined at a vlan device. A sysctl (ip_forward_update_priority) is added that lets users prevent this behaviour commit, commit, commit, commit, commit, commit, commit
- IPv6
Preventing the kernel from responding to ICMP Echo Requests messages can be useful in several ways. For IPv4, the sysctl icmp_echo_ignore_all could be used for this function, this release adds a echo_ignore_all sysctl for the IPv6 equivalent commit
ila: Add ILA_CMD_FLUSH netlink command to clear the ILA translation table commit
route: add support for directed broadcast forwarding. It implements the feature described in rfc1812 section-5.3.5.2 and rfc2644. It allows the router to forward directed broadcast when sysctl bc_forwarding is enabled commit, commit
Support 802.11ax High-Efficiency wireless commit, commit, commit, commit
802.11: Extend scan privacy by randomizing the sequence number of the probe request frames transmitted, and reducing the probe request content to just the SSID, supported rates, DS element and - if given - requested elements from userspace commit, commit, commit, commit, commit
TLS: Generic infrastructure to offload TLS crypto to a network devices. It enables the kernel TLS socket to skip decryption and authentication operations for SKBs marked as decrypted on the receive side of the data path. Leaving those computationally expensive operations to the NIC commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Support for Tx queue selection based on Rx queue(s) map. This is done by configuring Rx queue(s) map per Tx-queue using sysfs attribute. If the user configuration for Rx queues does not apply, then the Tx queue selection falls back to XPS using CPUs and finally to hashing commit, commit, commit, commit, commit, commit, commit
Add virtual XFRM interfaces to route IPSec traffic, which avoid all of the limitations of existing IPSEC tunnels commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, merge
Support DSCP and flowlabel per-transport in SCTP commit, commit, commit, commit, commit
Add parameter support to devlink commit, commit, commit, commit, commit, commit, commit, commit
Support regions and region snapshots in devlink, allowing users access to driver defined address regions and reading and dumping snapshots from them commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
devlink: Add enable_sriov parameter to enables SR-IOV commit
Allow to attach XDP programs to both HW and SW at the same time on a given device. This enables advanced use cases where some of the work is offloaded to the NIC and some is done by the host commit, commit, commit, commit, commit, commit, commit
bridge: a new bridge port option that allows any port to have any other port (in the same bridge of course) as its backup and traffic will be forwarded to the backup port when the primary goes down. This is mainly used in MLAG and EVPN setups where we have peerlink path which is a backup of many (or even all) ports and is a participating bridge port itself commit, commit
- packet scheduler:
Introduce a set of kernel interfaces that can be used by applications that require (time-based) Scheduled Tx of packets. It adds a new SO_TXTIME socket option, and the ETF "earliest txtime first" qdisc, that provides per-queue TxTime-based scheduling. For applications/systems that the concept of time slices isn't precise enough, the etf qdisc allows applications to control the instant when a packet should leave the network controller commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, merge
sched: Add Common Applications Kept Enhanced (cake) qdisc (paper). sch_cake targets the home router use case and is intended to squeeze the most bandwidth and latency out of even the slowest ISP links and routers, while presenting an API simple enough that even an ISP can configure it commit, commit, commit, commit, commit, commit, commit, commit
sched: Allow the flower classifier to match on tunnel options and the tunnel key action to set them commit, commit
packet sched: Add skbprio, the SKB priority queue scheduler. It schedules packets according to skb->priority, which is useful for request packets in DoS mitigation systems such as Gatekeeper commit
sched: set/match the tos/ttl fields of TC based IP tunnels commit, commit, commit
sched: Introduce matching on double vlan/QinQ headers for TC flower commit, commit, [[https://git.kernel.org/linus/24c590e3b0f9e