The rest of the 4.14 merge window
User-visible changes include:
- The disk quota subsystem has received a fair amount of performance
work, increasing file-creation performance in ext4 (with quotas
enabled) by a factor of about two.
- The CIFS filesystem can now read and write extended attributes when using
the SMB3 protocol.
- The heterogeneous memory management
patch set has finally been merged. HMM exists to enable the use of
devices with their own memory-management units that can access main
memory. See this
changelog for an overview of the current state of this work.
- The namespaced file capabilities patch
has been merged. This allows file capabilities to be used within user
namespaces. The scheme has been simplified somewhat, though, so that
only a single security.capability extended attribute can
exist for any given file.
- The kernel has gained support for the zstd compression
algorithm; it claims better performance and a better compression
ratio. See this
changelog for an overview.
- The new IOCB_NOWAIT flag can be used to specify that
asynchronous buffered
block I/O operations should be as close to non-blocking as possible.
Without this flag (or in current kernels) these operations can block
on memory-management operations, for example.
- The entire firmware subtree has been removed from the kernel
repository. The firmware that everybody actually uses has been
maintained in
its own repository for some years now, so these files were unused
and unneeded.
- New hardware support includes: Rockchip RK805 power-management chips, STMicroelectronics STM32 low-power timers, ROHM BD9571MWV power-management chips, TI TPS68470 power-management chips, Altera/Intel mSGDMA engines, Mediatek MT2712 and MT7622 PCI host controllers, Spreadtrum SC9860 I2C controllers, NXP i.MX6/7 remote processors, Maxim MAX17211/MAX17215 fuel gauges, Intel PCH/PCU SPI controllers, Qualcomm "B" family I/O memory-management units, Synopsys HSDK reset and clock controllers, ZTE ZX pulse-width modulators, Socionext UniPhier thermal monitoring units, Realtek RTD129x realtime clocks, Synopsys AXS10X SDP Generic PLL clocks, Renesas R-Car USB 2.0 clocks, Allwinner R40, A10, and A20 clock controllers, STMicroelectronics STM32H7 reset and clock controllers, Altera Soft IP I2C interfaces, STMicroelectronics STM32F7 I2C controllers, Lantiq XWAY SoC RCU reset controllers, Lantiq XWAY SoC RCU USB 1.1/2.0 PHYs, and PWM-controlled vibrators.
Changes visible to kernel developers include:
- The structure-layout randomization
plugin for GCC will now automatically rearrange the members of
structures that consist entirely of function pointers.
- The build system has long used gperf to generate
hashes. As of 4.14, though, that is no longer true. The gperf 3.1
broke that generation and, rather than fix it in a version-independent
way, Linus simply ripped
it out.
- The new memset16(), memset32(), and
memset64() functions can be used to set a range of memory to
an integer value.
- dma_alloc_noncoherent() has been removed; dma_alloc_attrs() should be used instead.
Now it is just a matter of finding and fixing the various bugs that were
inevitably introduced with all of those changes. If that
process goes well and follows the usual schedule, the final 4.14
release can be expected on November 5 or 12.
| Index entries for this article | |
|---|---|
| Kernel | Releases/4.14 |
