The rest of the 5.6 merge window
Architecture-specific
- The Intel memory protection extension feature, merged in 3.19, has been removed. This feature failed to take the world by storm, and support for it has been removed from the GCC compiler.
- The RISC-V architecture has gained support for the KASAN address sanitizer.
Core kernel
- The last users of the 32-bit time_t type have been fixed, and the associated types have been removed from the kernel. That means that, modulo a few loose ends, the kernel is now year-2038 ready. User-space work will still be required, and applications on 32-bit systems will need to use an updated C library. See this merge commit for more details.
- The io_uring subsystem has gained many more supported operations; see this article for details.
- The pidfd_getfd() system call, which allows a process to extract an open file descriptor from another process, has been merged.
- The "bootconfig" mechanism allows the kernel to receive, at boot time, a file containing command-line options; its intended use appears to be for tasks like setting up boot-time kprobes. The bootconfig tool, found in the tools directory, can be used to add one of these files to an initramfs image. This commit contains documentation for this feature. There is also a new set of options to control boot-time tracing; see this commit for documentation.
- A change to how pipe waiting works promises to speed up parallel kernel builds — always a kernel developer's favorite workload — but can also trigger a bug with old versions of GNU Make.
Filesystems and block I/O
- The F2FS filesystem has gained compression support; see this commit for some more information.
- The new softreval NFS mount option allows attribute
revalidation to succeed from cached values should the server go down.
From the
changelog: "
The use case for this option is for ensuring that we can still (slowly) traverse paths and use cached information even when the server is down.
" - NFS mounts over UDP are now disabled by default.
- NFS v4.2 server-to-server file copies are now supported.
- The ZoneFS filesystem, which facilitates low-level access to zoned block devices, has been merged. See this commit for more information.
Hardware support
- Clock: Qualcomm MSM8998 multimedia clock controllers, Qualcomm SC7180 clock controllers, Qualcomm IPQ6018 global clock controllers, and NXP IMX8MP CCM clock controllers.
- Graphics: Boe Himax8279d panels, R-Car DU color-management modules, Xinpeng XPP055C272 panels, Leadtek LTK500HD1829 panels, and Sony ACX424AKP DSI command-mode panels.
- Miscellaneous: Rockchip image signal processing units, TI TPS61050/TPS61052 LED controllers, ROHM BD71828 Power Management ICs, Qualcomm WCD9340/WCD9341 codecs, SGI IOC3 PS/2 controllers, and Mediatek system companion processors.
- PCI: Broadcom Brcmstb PCIe host controllers and Intel Gateway PCIe host controllers.
Memory management
- There is a new prctl() operation called PR_SET_IO_FLUSHER. Its purpose is to flag a process that is part of the memory-reclaim I/O path and which should thus not be throttled when memory constraints get tight. Within the kernel, it works by setting the PF_MEMALLOC_NOIO and PF_LESS_THROTTLE flags in the task structure.
- The dma-buf heaps subsystem, derived from the Android ION allocator, has been merged at last.
Security-related
- The /dev/random blocking pool has been removed. This change makes /dev/random behave more like /dev/urandom, in particular preventing it from blocking on available entropy once the pool has been initialized.
Virtualization and containers
- Linux guests running under VirtualBox can now mount folders exported by the host.
Internal kernel changes
- The pin_user_pages() API has been merged, allowing the kernel to better track user-space pages that have been pinned into RAM. The full infrastructure for making use of this information is still to come, though.
- The build system now tests that all UAPI header files include #ifdef guards to prevent them from being included twice.
- There is a new API that can be used to generate synthetic trace events in the kernel; see this commit for documentation.
The kernel development community now has until late March or early April,
when the final 5.6 release is expected, to
find and fix the bugs introduced by all of that work.
| Index entries for this article | |
|---|---|
| Kernel | Releases/5.6 |
Posted Feb 14, 2020 0:01 UTC (Fri)
by flussence (guest, #85566)
[Link]
[1]: https://lore.kernel.org/lkml/20200127005032.25447-1-linux...
The rest of the 5.6 merge window
