|
|
Subscribe / Log in / New account

4.20 Merge window part 2

By Jonathan Corbet
November 5, 2018
At the end of the 4.20 merge window, 12,125 non-merge changesets had been pulled into the mainline kernel repository; 6,390 came in since last week's summary was written. As is often the case, the latter part of the merge window contained a larger portion of cleanups and fixes, but there were a number of new features in the mix as well.

Architecture-specific

  • The MIPS architecture has gained support for kexec on many sub-architectures.
  • Support for the C-SKY processor architecture has been added to the kernel.

Core kernel

  • The pressure-stall information patch set has been merged. It creates a new set of kernel interfaces giving better information on just what is slowing the system down.
  • The new "udmabuf" pseudo-device allows user-space code to convert a memfd region into a dma-buf structure; it is intended for use in QEMU.
  • The syntax for accessing data from kprobes has been extended to allow easier access to arrays and function arguments. This merge commit gives an overall picture of the changes.

Filesystems and block layer

  • There are two new ioctl() commands for working with zoned devices: BLKGETZONESZ to get the zone size, and BLKGETNRZONES to get the number of zones. Both will return zero for normal (non-zoned) block devices.
  • The fanotify_mark() system call has gained a new FAN_MARK_FILESYSTEM mark type; it can be used to watch all events happening within a filesystem.
  • Server-side support for the NFS 4.2 asynchronous copy protocol has been added.
  • The UBIFS filesystem has a new authentication feature meant to prevent attacks via corrupted data structures; see this document for details.

Hardware support

  • Clock: Qualcomm SDM845 camera clock controllers, Qualcomm SDM660 and QCS404 global clock controllers, and Ingenic JZ4725B clocks.
  • Graphics: Rockchip RGB output controllers.
  • Industrial I/O: Qualcomm SPMI PMIC5 analog-to-digital converters (ADCs), Analog Devices ADXL372 3-Axis accelerometers. Microchip Technology MCP3911 ADCs Linear Technology LTC1660/LTC1665 digital-to-analog converters (DACs), and STMicroelectronics VL53L0X ToF ranger sensors.
  • Miscellaneous: STMicroelectronics STM32 thermal sensors, Marvell Armada 37xx watchdog timers, Toshiba TC358764 DSI/LVDS bridges, NXP i.MX pixel pipelines, Sony IMX319 and IMX355 sensors, Xilinx ZynqMP Ultrascale+ clock controllers, Qualcomm ADSP peripheral image loaders, and Allwinner sunXi video decoders.
  • USB: Cadence MHDP DisplayPort PHYs, Marvell PXA USB PHYs, UniPhier USB2 and USB3 PHYs, and Rockchip INNO HDMI PHYs.
  • The media subsystem has a new experimental "request API" meant to support frame-to-frame parameter changes in devices with that capability. See this commit for documentation on the user-space API for this feature.

Security

  • After a number of ups and downs, the "STACKLEAK" GCC plugin has finally been merged into the mainline. This plugin works to keep information from leaking out of the kernel via uninitialized on-stack variables.

Internal kernel changes

  • The XArray data structure, a reworking of the radix tree structure, has been merged at last and the page cache has been converted to use it.
  • Kernel builds now use -Wvla to warn about the use of variable-length arrays. That has become possible because the task of removing VLAs has finally reached its conclusion (or something close to it).
  • The new list_bulk_move_tail() list function will move a subsection of the list to the tail.
  • Two file_operations methods — clone_file_range() and dedupe_file_range() — have been combined into the new remap_file_range() method, since there was a fair amount of overlap between them. All in-kernel filesystems have been updated.

One feature that didn't quite get in was the new filesystem mounting API, which was sent to Linus but then ran into some opposition. It is likely to be restructured so that the internal virtual filesystem changes go in first, with the user-visible API changes happening later. It is possible, though perhaps unlikely, that the internal changes could still be pulled in the near future.

Now it's a matter of stabilizing all of that new code for the final release which, if the usual schedule holds, can be expected just before the end of the year.

Index entries for this article
KernelReleases/4.20


to post comments


Copyright © 2018, Eklektix, Inc.
This article may be redistributed under the terms of the Creative Commons CC BY-SA 4.0 license
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds