4.11 Merge window part 2
- A set of swapping scalability patches
has been merged. Swapping is becoming more interesting as the speed
of persistent storage devices increases, but that speed is exposing
some scalability issues in the swap code that were never worth fixing
before. With 4.11, swapping to persistent-memory devices should
perform significantly better.
- The x86 architecture can now provide transparent huge page support for
PUD-size (1GB) pages through the DAX direct-access interface. There
is not support for regular anonymous pages at this time.
- There is a new defragmentation policy available for use with
transparent huge pages. If the administrator writes the new value
defer+madvise to
/sys/kernel/mm/transparent_hugepage/defrag, the default
behavior will be to do defragmentation in the kcompactd
kernel thread. A process that wants huge pages badly enough to be
willing to wait for them, though, can call
madvise(MADV_HUGEPAGE) to ask the memory-management system to
go into direct reclaim if necessary to make huge pages available.
- There are two new namespace-oriented ioctl() commands:
NS_GET_NSTYPE returns the type of a namespace, while
NS_GET_OWNER_UID returns the owner of a namespace.
- There is a new control-group controller for access to RDMA resources
and bandwidth. See this
commit for documentation.
- Security labels for NFS-exported filesystems are now off by default, a
change from previous kernels. As NFS maintainer Bruce Fields put
it: "
But, having them on by default is a disaster, as it generally only makes sense if all your clients and servers have similar enough selinux policies
". - New hardware support includes:
- Audio
Broadcom BCM2835 audio interfaces,
Intel HDMI LPE Atom audio interfaces,
Nuvoton NAU85L40 audio codecs, and
Allwinner SUN8I audio codec.
- Clock:
HiSilicon Hi3660 clocks,
IDT VersaClock5 programmable clock generators,
Allwinner V3s and sun5i clock control units, and
ST Microelectronics STM32 realtime clocks.
- Crypto:
MediaTek EIP97 cryptographic engines,
Cavium cryptographic accelerators, and
Broadcom symmetric crypto/hash accelerators.
- GPIO:
Cortina Systems Gemini GPIO controllers,
Exar XR17V352/354/358 GPIO controllers, and
ACCES PCI-IDIO-16 GPIO controllers.
- Industrial I/O:
Texas Instruments ADS7950 analog-to-digital converters (ADCs),
Texas Instruments TLC4541 ADCs,
AVIA HX711 ADCs,
Maxim max11100 ADCs,
Renesas R-Car gyro ADCs,
Amlogic Meson SAR ADCs,
Capella CM3605 ambient light and proximity sensors,
TI TMP007 infrared thermopile sensors,
STMicroelectronics LSM6DSx inertial modules,
Maxim MAX5481-MAX5484 digital potentiometers,
ChromeOS EC barometers, and
Devantech SRF08 ultrasonic ranger sensors.
- Miscellaneous:
Intel INT3496 ACPI OTG ports,
Maxim DS2405 addressable switches,
Motorola CPCAP power-management ICs,
Zeitec ZET6223 I2C touchscreen controllers,
Samsung Exynos PCIe PHYs,
MIPI display bus interface LCD controllers,
STMicroelectronics STM32F4 I2C controllers,
NVIDIA Tegra BPMP I2C controllers,
Cortina systems Gemini (SL3516) SoC watchdogs, and
ZTE zx2967 SoC watchdogs.
- Networking:
Broadcom NetXtreme-E 10/25/40/50G RDMA adapters.
- USB: Qualcomm USB HS and HSIC ULPI PHY modules, Broadcom NorthStar plus USB3 PHYs, ChipIdea ULPI PHYs, Microchip USB251XB hub controllers, and Renesas uPD78F0730 USB serial ports.
- Audio
Broadcom BCM2835 audio interfaces,
Intel HDMI LPE Atom audio interfaces,
Nuvoton NAU85L40 audio codecs, and
Allwinner SUN8I audio codec.
Changes visible to kernel developers include:
- The new VGACON_SOFT_SCROLLBACK_PERSISTENT configuration
option will, when set, cause the VGA console code to retain scrollback
information when switching between consoles.
- The LZ4 compression module has been
replaced with a newer, better-performing version.
- Support for the %Z format-string directive has been removed.
Lower-case %z should be used instead when printing
size_t and ssize_t values.
- The "TinyDRM" subsystem makes it easy to provide graphics support for
small, simple displays. The hope is that it can replace a large
number of framebuffer drivers over time.
- The IDR and IDA mechanisms have been extensively rewritten and are now based on the kernel's radix tree implementation. See this commit for a brief description of what was done and why.
At this point, the flow of patches has slowed considerably, so it is
probably safe to assume that almost all of the major changes for 4.11 have
been merged. One exception might be the sched.h rework which, if it is merged
in this cycle, will go in right at the end of the merge window.
Index entries for this article | |
---|---|
Kernel | Releases/4.11 |