KernelNewbies
  • Comments
  • Immutable Page
  • Menu
    • Navigation
    • RecentChanges
    • FindPage
    • Local Site Map
    • Help
    • HelpContents
    • HelpOnMoinWikiSyntax
    • Display
    • Attachments
    • Info
    • Raw Text
    • Print View
    • Edit
    • Load
    • Save
  • Login

Kernel Hacking

  • Frontpage

  • Kernel Hacking

  • Kernel Documentation

  • Kernel Glossary

  • FAQ

  • Found a bug?

  • Kernel Changelog

  • Upstream Merge Guide

Projects

  • KernelJanitors

  • KernelMentors

  • KernelProjects

Community

  • Why a community?

  • Regional Kernelnewbies

  • Personal Pages

  • Upcoming Events

References

  • Mailing Lists

  • Related Sites

  • Programming Links

Wiki

  • Recent Changes

  • Site Editors

  • Side Bar

  • Tips for Editors

  • Hosted by WikiWall

Navigation

  • RecentChanges
  • FindPage
  • HelpContents
Revision 16 as of 2018-10-09 20:46:16
KernelNewbies:
  • Linux_4.19

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
  2. Memory management
  3. Block layer
  4. Tracing and perf
  5. Virtualization
  6. Security
  7. Networking

1. File systems

  • EROFS
    • (FEATURED) Add EROFS (Enhanced Read-Only File System), a lightweight read-only file system with modern designs for scenarios which need high-performance read-only requirements, eg. firmwares in mobile phone or LIVECDs source

  • BTRFS
    • Allow defrag on opened read-only files that have rw permissions; similar to what dedupe will allow on such files commit

    • tree checker: more checks for: block group items, essential trees commit, commit

    • Remove V0 extent support commit

  • XFS
    • Remove deprecated barrier/nobarrier mount commit

  • CIFS
    • Add support for statfs for smb3.1.1 posix extensions commit

    • Allow previous versions to be mounted with snapshot= mount parameter commit

    • Display stats counters for number of slow commands commit

    • Allow disabling insecure dialects in the configuration commit

  • EXT4
    • Add 64-bit timestamp support to ext4's superblock fields commit, commit, commit, commit, commit, commit

  • 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
    • Add support for asynchronous server-side COPY operations commit, commit, commit, commit, commit, commit, commit, commit, commit

  • 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
    • Allow setting assert action as mount parameter commit

    • Introduce Kconfig symbol for xattr support commit

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
    • Support cloning across namespaces commit

    • Support for images within namespaces commit

  • 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

  • Hyper-V:
    • To gather more actionable data during crashes, such as stack trace, the proposal is to write one page worth of kmsg data on an allocated page and the Hypervisor notified of the page address through the MSR commit

    • vmbus: add numa_node to sysfs commit

    • netvsc: Add per-cpu ethtool stats commit

  • virtio_net: Add XDP related stats commit, add kick stats commit

  • Xen
    • Add dma-buf functionality to Xen grant device commit, commit, commit, commit, commit, commit, commit, commit

    • Export device state to sysfs commit

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

  • MoinMoin Powered
  • Python Powered
  • GPL licensed
  • Valid HTML 4.01