Linux 5.4 changelog.
This changelog is not complete, meanwhile you can read about it here:
or, instead, you can take a look at the list of merge requests:
1. Memory management
- memory control group
Extend the shrink file to shrink all memcg caches for the slab cache. Before the commit, writing 1 to /sys/kernel/slab/<slab>/shrink was shrinking only the root cache. With SLUB_MEMCG_SYSFS_ON enabled and slub_memcg_sysfs=1 used, it was possible to shrink also memcg caches, but it was impractical. Now all memcg caches will be shrunk when writing to the "global" shrink file. commit
Throttle allocators when reclaim cannot keep up with v2 memory.high limit commit
Introduce gradual reclaim pressure between v2 memory.low and memory.min thresholds instead of the previous cliff behavior. commit commit commit
Improve situation with multiple parallel reclaimers by letting each walk through the whole cgroup tree, resulting in fewer premature OOM kills. commit
Deprecate v1 kmem.limit_in_bytes due to causing unexpected ENOMEM failures and global OOM's. commit
Prevent premature OOM's due to deferred THP split queue. commit commit commit commit
Introduce madvise() flags MADV_COLD, which marks pages as inactive (thus more easily reclaimed under memory pressure), but doesn't discard the contents like MADV_FREE does, and MADV_PAGEOUT, which reclaims pages immediately, but doesn't discard the contents like MADV_DONTNEED does. commit commit commit commit
Experientally enable THP support for text section (executable code) of non-shmem files (CONFIG_READ_ONLY_THP_FOR_FS) commit commit commit commit commit commit commit
Change the handling of THP page faults so that they are tried first on a local NUMA node with no memory reclaim allowed, and if they not succeed, for madvise(MADV_HUGEPAGE) areas retry on all nodes, allowing reclaim. This should prevent swap storms observed on pre-5.3 kernels with some workloads and also fix the reported regression for a different workload on 5.3 kernel. LWN merge commit commit commit commit commit
Make uprobes uprobe THP-aware. Instead of splitting whole THP when installing uprobe, split only the huge PMD, and reinstate it after uprobes are removed. commit commit commit commit commit commit
kmemleak: make it more robust during early allocations (before slab subsystem is initialized) by using a single memory pool commit commit commit commit commit commit
KASAN: for software tag-based mode, enhance the memory corruption report with a guess whether it is "use-after-free" or "out-of-bound" error instead of "invalid-access" error. commit
Introduce page_shift(), page_size() and compound_nr() to make common operations with compound pages simpler and more readable. commit commit commit
page_owner: store also the stack of who last freed the page and print it in dump_page() to improve debugging double free or use-after-free, especially when debug_pagealloc or KASAN are also enabled commit commit commit commit commit commit
oom: add task UID, oom_score_adj and pgtables to OOM message commit commit
Fix minuters or hours long stalls when setting nr_hugepages to too high values. commit commit commit commit
Provide a generic top-down mmap layout implementation and use it for riscv. commit commit commit commit commit commit commit commit commit commit commit commit commit commit
zswap: let zswap use movable memory with zsmalloc commit commit
Guarantee alignment to size for kmalloc() allocations of power-of-two size, regardless of used sla*b allocator and activated debugging functions. LWN commit commit
1.1. Multi Function Devices (MFD)
Add support for Merrifield Basin Cove PMIC commit
intel-lpss: Add Intel Skylake ACPI IDs commit
intel-lpss: Add Intel Tiger Lake PCI IDs commit
mt6323: Add MT6323 RTC and PWRC commit
Drop obsolete JZ4740 driver commit
1.2. Pulse-Width Modulation (PWM)
1.3. Inter-Integrated Circuit (I2C + I3C)
Add i2c-icy for I2C on m68k/Amiga commit
axxia: support slave mode commit
designware-pci: Add support for Elkhart Lake PSE I2C commit
i2c-eeprom_slave: Add support for more eeprom models commit
icy: Add LTC2990 present on 2019 board revision commit
imx: ACPI support for NXP i2c controller commit
piix4: Add ACPI support commit
1.4. Hardware monitoring (hwmon)
Add Synaptics AS370 PVT sensor driver commit
ibm-cffps: Add support for version 2 of the PSU commit
k10temp: Add support for AMD family 17h, model 70h CPUs commit
lm75: add support for PCT2075 commit
nct6775: Integrate new model nct6116 commit
nct7904: Add extra sysfs support for fan, voltage and temperature commit
pmbus: Add Inspur Power System power supply driver commit
shtc1: add support for the SHTC3 sensor commit
Drop obsolete JZ4740 driver commit
Remove ads1015 driver commit
1.5. General Purpose I/O (gpio)
aspeed: Add SGPIO driver commit
aspeed: Add in ast2600 details to Aspeed driver commit
Add support for GPIOs over Moxtet bus commit
madera: Add support for Cirrus Logic CS47L15 commit and Cirrus Logic CS47L92 commit
Remove ks8695 driver commit
1.6. Leds
1.7. DMA engines
tegra-apb: Support per-burst residue granularity commit
fsl-edma: add i.mx7ulp edma2 version support commit
Drop JZ4740 driver commit
1.8. Cryptography hardware acceleration
- cavium/nitrox
ccp: Add module parameters to control CCP activation commit, commit, commit, commit
- ccree
- inside-secure
Add support for AES-GCM, AES-CFB, AES-OFB and AES-CCM commit, commit, commit, commit
inside-secure: Add AES-XTS cipher support commit, commit, commit,
inside-secure - add support for PCI based FPGA development board commit
inside-secure - add support for using the EIP197 without vendor firmware commit
inside-secure - Add supp. for non-Marvell HW commit, commit, commit, commit, commit, commit
inside-secure: add more AEAD ciphersuites commit, commit, commit
hisilicon: Add HiSilicon QM and ZIP controller driver commit, commit, commit, commit, commit
mediatek - add support to OFB/CFB mode commit
1.9. PCI
dwc: al: Add Amazon Annapurna Labs PCIe controller driver commit
mediatek: Add controller support for MT7629 commit
tegra: Add Tegra194 PCIe support commit
tegra: Add support to configure sideband pins commit
tegra: Add support to enable slot regulators commit
hotplug: remove the sgi_hotplug driver commit
1.10. Non-Transparent Bridge (NTB)
ntb_hw_amd: Add a new NTB PCI device ID commit
1.11. Thunderbolt
Add support for Intel Ice Lake commit
1.12. Clock
Add clk_min/max_rate entries in debugfs commit
Add support for AST2600 SoC commit
clk-cdce925: Add regulator support commit
imx: Add support for i.MX8MN clock driver commit
ingenic: Add driver for the TCU clocks commit
mediatek: Add MT6779 clock support commit
meson: g12a: add support for DVFS commit
meson: meson-sm1: add support for DVFS commit, commit, commit
meson: axg-audio: add g12a reset support commit
mvebu: Add CPU clock support for Armada 7K/8K commit, commit, commit, commit
mvebu: AP807 clocks support commit, commit, commit, commit, commit, commit
qcom: clk-alpha-pll: Add support for Trion PLLs commit
qcom: gcc: Add global clock controller driver for SM8150 commit
rockchip: Add clock controller for the rk3308 commit
sunxi-ng: v3s: add Allwinner V3 support commit
Add a new timer-ingenic driver commit
1.13. PHY ("physical layer" framework)
lantiq: vrx200-pcie: add a driver for the Lantiq VRX200 PCIe PHY commit
mvebu-cp110-comphy: Enhance CP110 COMPHY support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
tegra: Add PCIe PIPE2UPHY support commit
1.14. EDAC (Error Detection And Correction)
mellanox: Add ECC support for BlueField DDR4 commit
amd64: Add PCI device IDs for family 17h, model 70h commit
amd64: Support asymmetric dual-rank DIMMs commit
Add driver for the Marvell Armada XP SDRAM and L2 cache ECC commit
1.15. Various
NFC: nxp-nci: Add NXP1001 to the ACPI ID table commit
PTP: add support for one-shot output commit
PTP: introduce new versions of IOCTLs commit
backlight: Expose brightness curve type through sysfs commit
bus: Add support for Moxtet bus commit
bus: moxtet: Add sysfs and debugfs documentation commit
can: add socket type for CAN_J1939 commit
can: extend sockaddr_can to include j1939 members commit
char/mspec: remove SGI SN2 support commit
char: remove the SGI snsc driver commit
char: remove the SGI tiocx/mbcs driver commit
Remove the SGI SN2 IOC3 base support commit
Remove the SGI SN2 IOC4 base support commit
eeprom: Deprecate the legacy eeprom driver commit
fdt: add support for rng-seed commit
firmware: Add Turris Mox rWTM firmware driver commit
firmware: add Intel Stratix10 remote system update driver commit
firmware: arm_scmi: Add RESET protocol in SCMI v2.0 commit
firmware: arm_scmi: Add discovery of SCMI v2.0 performance fastchannels commit
firmware: arm_scmi: Make use SCMI v2.0 fastchannel for performance protocol commit
firmware: imx: Add DSP IPC protocol interface commit
fpga: altera-cvp: Add Stratix10 (V2) Support commit
fpga: dfl: afu: add error reporting support commit
fpga: dfl: afu: add userclock sysfs interfaces commit
fpga: dfl: fme: add DFL_FPGA_FME_PORT_RELEASE/ASSIGN ioctl support commit
fpga: dfl: fme: add capability sysfs interfaces commit
fpga: dfl: fme: add global error reporting support commit
fpga: dfl: pci: enable SRIOV support commit
interconnect: Add support for path tags commit
interconnect: qcom: Add QCS404 interconnect provider driver commit
interconnect: qcom: Add interconnect RPM over SMD driver commit
interconnect: qcom: Add tagging and wake/sleep support for sdm845 commit
irqchip: Add irq-ingenic-tcu driver commit
mailbox: qcom: Add support for IPQ8074 APCS commit
mailbox: qcom: Add support for Qualcomm SM8150 and SC7180 SoCs commit
mei: me: add comet point (lake) LP device ids commit
memory: mtk-smi: Add gals support commit
misc/sgi-xp: remove SGI SN2 support commit
misc: Remove spear13xx pcie gadget driver commit
misc: add the full Soft Decision Forward Error Correction (SD-FEC) driver implementation, driver DT binding and driver documentation commit, commit, commit, commit, commit, commit, commit
parport: parport_serial: Add support for Sunix Multi I/O boards commit
perf/imx_ddr: Add support for AXI ID filtering commit
regulator: uniphier: Add Pro5 USB3 VBUS support commit
remoteproc: Add a sysfs interface for name commit
reset: Add support for resets provided by SCMI commit
soc: amlogic: Add support for Everything-Else power domains controller commit
soc: imx-scu: Add SoC UID(unique identifier) support commit
soc: imx8: Add i.MX8MM UID(unique identifier) support commit
soc: imx8: Add i.MX8MQ UID(unique identifier) support commit
soc: qcom: Add socinfo driver commit
soc: qcom: socinfo: Expose custom attributes commit
soc: qcom: socinfo: Expose image information commit
soc: samsung: Add exynos chipid driver support commit
tpm/tpm_ftpm_tee: A driver for firmware TPM running inside TEE commit
w1: add 1-wire master driver for IP block found in SGI ASICs commit
w1: add DS2501, DS2502, DS2505 EPROM device driver commit