Linux 4.17 has been released on 3 June 2018.
Summary: This release adds support for AMD Radeon Vega 12 and it enables the "display code" by default in supported AMD Radeon GPUs; it also adds a kernel TLS receive path; a more efficient idle loop that prevent CPUs from spending too much time in shallow idle states; eight unmaintained architectures have been removed and another, the Andes NDS32 architecture, has been added; XFS has gained lazytime support; the CPU load estimations have been modified; Intel Cannonlake GPUs are supported and a kernel memory consistency model has been added; and many new drivers and other improvements.
Contents
-
Prominent features
- AMD Radeon Vega 12 support + "Display Code" enabled by default
- Kernel TLS receive path
- A more efficient idle loop
- Removal of unused architectures
- New NDS32 architecture
- XFS lazytime support
- Better load estimation
- Intel Cannonlake support
- Latest protections against CPU bugs
- Provide a Linux-kernel memory model
- Core (various)
- File systems
- Memory management
- Block layer
- Tracing and perf
- Virtualization
- Cryptography
- Security
- Networking
- Architectures
-
Drivers
- Graphics
- Storage
- Drivers in the Staging area
- Networking
- Audio
- Tablets, touch screens, keyboards, mouses
- TV tuners, webcams, video capturers
- Universal Serial Bus
- Serial Peripheral Interface (SPI)
- Watchdog
- Serial
- ACPI, EFI, cpufreq, thermal, Power Management
- Real Time Clock (RTC)
- Voltage, current regulators, power capping, power supply
- Pin Controllers (pinctrl)
- Multi Media Card (MMC)
- Memory Technology Devices (MTD)
- Industrial I/O (iio)
- Pulse-Width Modulation (PWM)
- Inter-Integrated Circuit (I2C)
- Hardware monitoring (hwmon)
- General Purpose I/O (gpio)
- Leds
- DMA engines
- Hardware Random Number Generator (hwrng)
- Cryptography hardware acceleration
- PCI
- Thunderbolt
- FRU Support Interface (FSI)
- Clock
- Various
- List of merges
- Other news sites
1. Prominent features
1.1. AMD Radeon Vega 12 support + "Display Code" enabled by default
This release adds support for AMD Radeon Vega 12.
It also enables by default the display code added in Linux 4.15
1.2. Kernel TLS receive path
Linux 4.13 added a feature to speed up TLS traffic by creating an in-kernel TLS pseudo implementation that did let the kernel send TLS messages. This release includes support for the receiving side.
1.3. A more efficient idle loop
This release reworks the idle loop in order to prevent CPUs from spending too much time in shallow idle states. It reduces idle power on some systems by 10% or more and may improve performance of workloads in which the idle loop overhead matters.
Code: commit, commit, commit, commit , commit, ,commit, commit, commit, commit, commit
1.4. Removal of unused architectures
Eight architectures have been removed due to lack of maintenance: score, blackfin, CRIS, frv, m32r, metag, mn10300 and tile
Recommended LWN article: Shedding old architectures and compilers in the kernel
Code: commit, commit, commit, commit, commit, commit, commit, commit, commit
1.5. New NDS32 architecture
While eight unmaintained architectures are being removed, one has been added: NDS32. The Andes nds32 architecture supports Linux for Andes's N10, D10, N13, N15, D15 processor cores. It is based on the patented 16/32-bit AndeStar RISC-like architecture. AndesCores range from highly performance-efficient small-footprint cores for microcontrollers and deeply-embedded applications to 1GHz+ cores running Linux, covering general-purpose N-series cores for a wide range of computing need, DSP-capable D-series cores for digital signal control, instruction-extensible E-series cores for application-specific acceleration, and secure S-series cores for best protection of the most valuable. Customers together have shipped over 2.5 billion SoC’s with Andes processors embedded (including non-MMU IP cores).
Code: (including interrupt controller driver and timer driver). It is able to boot to shell and passes most LTP-2017 testsuites in nds32 AE3XX platform https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/nds32?id=e71ea3badae55a69a44b8fcb46ae7b547529b3761arch/nds32
1.6. XFS lazytime support
XFS adds support for the lazytime, a feature that helps to improve the performance impact caused by atime updates.
Code: commit
1.7. Better load estimation
This release changes the algorithms used to estimate the CPU load to make it a better fit for the scheduling of tasks common in embedded mobile use-cases, without affecting other classes of workloads.
Recommended LWN article: Toward better CPU load estimation
Code: commit, commit, commit, commit
1.8. Intel Cannonlake support
Support for Intel Cannonlake GPUs is enabled in this release.
1.9. Latest protections against CPU bugs
This release adds support for SSBD mitigation
Code: commit, commit, commit, commit, commit, commit
1.10. Provide a Linux-kernel memory model
This release adds the Linux Kernel Memory Consistency Model (LKMM) subsystem, which is an an array of tools in tools/memory-model/ that formally describe the Linux memory coherency model (a.k.a. Documentation/memory-barriers.txt), and also produce 'litmus tests' in form of kernel code which can be directly executed and tested.
Recommended LWN article: A formal kernel memory-ordering model (part 1), A formal kernel memory-ordering model (part 2)
Code: commit
2. Core (various)
- firmware
Add KASAN checks to atomic operations commit, commit, commit, commit
Add trace events around the initcall functions, which adds the necessary information to analyze the initcalls without the high overhead of printk()s that can substantially slow down the boot process commit, commit, commit, commit
(FEATURED) Power management: rework the idle loop commit, commit, commit, commit , commit, ,commit, commit, commit, commit, commit
- Task scheduler
(FEATURED) Better load estimation commit, commit, commit, commit
boot parameters "nohz_full=" or "isolcpus=nohz" will now offload the residual 1Hz tick to the global workqueue so that the nohz_full CPUs don't have anymore tick (assuming nothing else requires it) as their residual 1Hz tick is offloaded to the housekeepers commit, commit, commit, commit, commit, commit, commit, commit
Reduce migrations and conflicts with automatic NUMA balancing commit, commit, commit, commit, commit, commit
- prctl
proc: Provide details on speculation flaw mitigations commit
IRQs: Add wakeup sysfs node to show IRQ wakeup state commit
Unconditionally clear stack on fork commit
Pin stack limit during exec commit
Hibernation: Add a new /sys/power/resume_offset that lets userspace specify the offset and disk to use when initiating a hibernate cycle commit
RCU: Remove obsolete statistics from debugfs commit, commit, commit, commit
sysvipc: introduce STAT_ANY commands (msgctl(MSG_STAT_ANY), semctl(SEM_STAT_ANY), shmctl(SHM_STAT_ANY)) to solve discrepancies for ipc object permission checks between the syscall and via procfs commit, commit, commit
kconfig: rename silentoldconfig to syncconfig commit
inotify: Extend ioctl to allow to request id of new watch descriptor commit
3. File systems
- BTRFS
- XFS
Implement the lazytime mount option commit
- AFS
- F2FS
Introduce new mount option fsync_mode to control the policy of fsync. fsync_mode=posix is set by default, and means that f2fs uses a light fsync, which follows POSIX semantics. fsync_mode=strict means that it's a heavy fsync, which behaves in line with xfs, ext4 and btrfs, where generic/342 will pass, but the performance will regress commit
Add three block allocation policies to pass down write hints given by user commit, commit, commit
Expose extension list to user and introduce hot file extension commit, commit
Add mount option for segment allocation policy commit
Introduce F2FS_FEATURE_LOST_FOUND (unreachable files saved in lost+found) feature commit
Introduce a new mount option test_dummy_encryption commit
nowait aio support commit
Support large nat bitmap commit
- CEPH
- OVERLAYFS
- CIFS
- PSTORE
- UDF
Remove never implemented mount options commit
4. Memory management
Introduce MAP_FIXED_NOREPLACE to solve issues not solved with MAP_FIXED commit
(FEATURED) Automate memory-barriers.txt; provide Linux-kernel memory model commit
OOM: remove 3% bonus for CAP_SYS_ADMIN processes commit
Introduce the concept of indirectly reclaimable memory (nr_indirectly_reclaimable in /proc/vmstat). Indirectly reclaimable memory is any sort of memory, used by the kernel (except of reclaimable slabs), which is actually reclaimable, i.e. will be released under memory pressure commit, commit, commit, commit
Introduces the ability to define both kernelcore and movablecore boot options as a percentage of total system memory commit
Make counting of list_lru_one::nr_items lockless commit
5. Block layer
dm unstripe: adds support for non power of 2 chunk size to the "unstriped" target commit, commit
dm: add support for secure erase forwarding commit
- rbd
libnvdimm: Add device-tree based driver commit
tools/testing/nvdimm: allow custom error code injection commit
lightnvm 1.2 to 2.0 transition commit, commit, commit, commit, commit, commit
nvme: Add fault injection feature commit
6. Tracing and perf
Modernize the kprobe and uprobe creation/destruction tooling ABIs. The existing text based APIs (kprobe_events and uprobe_events in tracefs), are naive, limited ABIs that are not really suited for modern, robust tooling. This release introduces a file descriptor based ABI that does not have these limitations: it introduces the 'perf_kprobe' and 'perf_uprobe' PMUs and extend the perf_event_open() syscall to create events with a kprobe/uprobe attached to them commit, commit, commit
- perf annotate
Recognize and handle jumps to other functions as calls, which improves the navigation along jumps and back commit
Add the 'P' hotkey in TUI annotation to dump annotation output into a file, to ease e-mail reporting of annotation details commit
Add an IPC/cycles column to the TUI commit
Introduce --ignore-vmlinux command line option commit
Introduce the --stdio2 output mode commit
perf script: Add --show-round-event to display PERF_RECORD_FINISHED_ROUND commit
perf c2c: Add NUMA analysis support commit, commit, commit, commit, commit, commit
perf trace/stat: Implement support for the -G/--cgroup target in 'perf trace'. One can set a cgroup as a default cgroup to be used by all events or set cgroups with the 'perf stat' and 'perf record' behaviour, i.e. '-G A' will be the cgroup for events defined so far in the command line commit
- perf stat
perf report: Introduce --ignore-vmlinux command line option commit
perf: Support wildcards on pmu name in dynamic pmu events commit, commit
Add perf -vv as an alias to 'perf version --build-options' commit
perf: Add PERF_EVENT_IOC_MODIFY_ATTRIBUTES which allows the modification of hardware breakpoints, which new ABI variant massively speeds up existing tooling that uses hardware breakpoints to instrument (and debug) memory usage commit
perf script: Add Python 3 support commit
perf tools: Add a "dso_size" sort order commit
Show only failing syscalls with perf trace --failure commit
tracing: an extended histogram rework: now the kernel allows the synthetic events to have histograms from multiple event data. Adds triggers "onmatch" and "onmax" to call the synthetic events. For more details see the Documentation. commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
uprobe: Add support for attaching uprobes to binaries in overlayfs commit
7. Virtualization
- User-mode linux
KVM: Allow to query for hints about the configuration of the guests. The first hint KVM_HINTS_DEDICATED, is set if the guest has dedicated physical CPUs for each vCPU (i.e. pinning and no over-commitment). This allows optimizing spinlocks and tells the guest to avoid PV TLB flush commit
uio: uio_hv_generic: support sub-channels commit
vfio/pci: Add ioeventfd support commit
vhost: add vsock compat ioctl commit
hv: vmbus: Implement Direct Mode for stimer0 commit
8. Cryptography
speck: add support for the Speck block cipher commit
sm4: introduce SM4 symmetric cipher algorithm commit
9. Security
Add SELinux SCTP protocol support commit, commit, commit, commit
- Apparmor
Add basic socket mediation. This is not a full net mediation but just whether a spcific family of socket can be used by an application, along with setting up some basic infrastructure for network mediation to follow. Network mediation will only be available in v8 abi complaint policy commit
- Add support for attaching profiles via xattr, presence and value. An example usecase for
this is to automatically transition to a more privileged Apparmor profile if an executable has a valid IMA signature, which can then be appraised by the IMA subsystem commit
audit unknown signal numbers commit
- seccomp
random: add new ioctl RNDRESEEDCRNG which forces the the crng to be reseeded commit
- IMA
Support using new creds in appraisal policy commit
- Fail signature verification based on policy. It addresses the fuse privileged mounted filesystems in environments which are unwilling to accept the risk of trusting the
signature verification and want to always fail safe, but are for example using a pre-built kernel commit
audit: deprecate the AUDIT_FILTER_ENTRY filter commit
10. Networking
- TCP
Switch to Generic Segmentation Offload being always on commit, commit, commit, commit, commit, commit
Adds TCP_NLA_SENDQ_SIZE stat into SCM_TIMESTAMPING_OPT_STATS. It reports no. of bytes present in send queue, when timestamp is generated commit
Adds TCP_NLA_CA_STATE stat into SCM_TIMESTAMPING_OPT_STATS. It reports ca_state of socket, when timestamp is generated commit
Adds TCP_NLA_SND_SSTHRESH stat into SCM_TIMESTAMPING_OPT_STATS that reports tcp_sock.snd_ssthresh commit
UDP: Move the udp sysctl to namespace commit
- Wireless
Support offloading wireless authentication to userspace via NL80211_CMD_EXTERNAL_AUTH commit, commit, commit
Add support for running 802.11 authentication mechanisms (e.g. 802.1X, 4-Way Handshake, etc) over NL80211 instead of putting them onto the network device commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Allow AP_VLAN operation on crypto controlled devices commit
Add txq flags to debugfs commit
Support reporting A-MPDU EOF bit value/known commit
Add support to notify station's opmode change to userspace commit, commit
Extends fib rule match support to include sport, dport and ip proto match (to complete the 5-tuple match support). Common use-cases of Policy based routing in the data center require 5-tuple match commit, commit, commit, commit, commit
IPv6: Add support for multipath selection using hash of 5-tuple commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
IPv6: allow userspace to add IFA_F_OPTIMISTIC addresses commit
- ethtool
fib_rules: Add new attribute to set protocol commit
- Infiniband
IB device memory support commit, commit, commit, commit, commit, commit, commit, commit
ESP flow action support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
srpt: Add RDMA/CM support commit
- Verbs flow counters support, it allows user space applications to monitor real time traffic activity and events of the verbs objects it manages, e.g.: ibv_qp, ibv_wq, ibv_flow
RDMA ioctl() improvements commit, commit, commit, commit, commit, commit, commit, commit
batman-adv: netlink support for DAT and MCAST commit, commit
ncsi: Add generic netlink family commit
- netfilter
ctnetlink: synproxy support commit
ebtables: Add support for specifying match revision commit
ebtables: add support for matching ICMP type and code commit
ebtables: add support for matching IGMP type commit
nft_ct: add NFT_CT_{SRC,DST}_{IP,IP6} commit
xt_conntrack: Support bit-shifting for CONNMARK & MARK targets commit
namespaces: send uevent messages commit
RDS: zerocopy support commit, commit, commit, commit, commit, commit, commit
sock: remove zerocopy sockopt restriction on closed tcp state commit
- SCTP
- BPF
Add sock_ops R/W access to ipv4 tos commit
Introduce cgroup-bpf bind, connect, post-bind hooks commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for bpf program to read perf event sample address commit, commit
Adds a BPF hook for sendmsg and senfile by using the ULP infrastructure and sockmap commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Introduce bpf raw tracepoints. It is a different way to address the pressing need to access task_struct pointers in sched tracepoints from bpf programs commit, commit, commit, commit, commit, commit, commit, commit, commit
Add the BPF_F_INGRESS flag support to the reidrect APIs, bringing the sockmap API in-line with the cls_bpf redirect APIs commit, commit, commit, commit
Whitelist all syscalls for error injection commit
Visualization support for eBPF program commit, commit, commit, commit, commit, commit, commit, commit
netdevsim: Add simple FIB resource controller via devlink commit
- tun
ppp: remove the PPPIOCDETACH ioctl commit
RDMA/nldev: adds rdma_cm_id, ib_cq, ib_mr, and ib_pd information to the new resource tracking database commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- SMC
- TIPC
11. Architectures
- (FEATURED) Removal of unmaintained architectures
- ARM
Add ARCH_HAS_FORTIFY_SOURCE commit
- Device Tree Sources
Allwinner H6 makes its debut with the Pine-H64 board, and we get two new machines based on its older siblings: the H5 based OrangePi Zero+ and the A64 based Teres-I Laptop from Olimex. On the 32-bit side, we add The Olimex som204 based on Allwinner A20, and the Banana Pi M2 Zero development board (based on H2) commit, commit, commit, commit, commit, commit, commit
NVIDIA adds support for Tegra194 aka "Xavier", plus their p2972 development board and p2888 CPU module commit, commit
The Nuvoton npcm750 is a BMC that was newly added, for now we only support running on the evaluation board commit
STmicroelectronics stm32 gains support for the stm32mp157c and two evaluation boards commit, commit, commit
The Toradex Colibri board family grows a few members based on the i.MX6ULL variant commit
The Advantec DMS-BA16 is a Qseven module using the NXP i.MX6 family of chips commit
The Phytec phyBOARD Mira is a family of industrial boards based on i.MX6. For now, four models get added commit, commit, commit, commit, commit
TI PDU001 based PDU-001 is an industrial embedded machine used for traffic monitoring commit
The Aspeed platform now supports running on the BMC on the Qualcomm Centriq 2400 server commit
Samsung Exynos4 based Galaxy S3 is a family of mobile phones Qualcomm msm8974 based Galaxy S5 is a rather different phone made by the same company commit
The Xilinx Zynq and ZynqMP platforms now gained a lot of dts file for the various boards made by Xilinx themselves, as well as the Digilent Zybo Z7 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
The ARM Versatile family now supports the "IB2" interface board commit
The Renesas H2 based "Stout" and the H3 based Salvator-X are more evaluation boards named after a kind of beer, as most of them are. The r8a77980 (V3H) based "Condor" apparently doesn't follow that tradition commit
ROC-RK3328-CC is a simple developement board from the Libre Computer Project, based on the Rockchips RK3328 SoC commit
Haiku is another development board plus Qseven module based on Rockchips RK3368 and made by Theobroma Systems commit, commit
exynos: Add Samsung's Exynos4412-based Midas boards commit
Add SC2731 PMIC dts file for Spreadtrum SC9860 commit
renesas: Add R-Car Salvator-x M3-N support commit
renesas: Add support for Salvator-XS with R-Car M3-N commit
renesas: initial Condor board device tree commit
imx: Add basic msl support for imx6sll commit
imx: Remove epit support commit
Add support for Cortex-R8 processor commit
npcm: add basic support for Nuvoton BMCs commit
speck: add NEON-accelerated implementation of Speck-XTS commit
firmware: ARM System Control and Management Interface(SCMI) support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
SMMUv3 52-bit address support commit, commit,commit, commit, commit, commit, commit
raid6: Add vpermxor implementation for raid6 Q syndrome commit
perf cs-etm: Inject capabilitity for CoreSight traces commit
perf tools arm64: Add libdw DWARF post unwind support for ARM64 commit
Adds support for some perf events features, targeted at ARM64 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
KVM/arm64: Randomise EL2 mappings (variant 3a mitigation) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Expose Arm v8.4 features commit
arm64: Add support for new control bits CTR_EL0.DIC and CTR_EL0.IDC commit
arm64/speck - add NEON-accelerated implementation of Speck-XTS commit
- X86
(FEATURED) SSBD mitigation commit, commit, commit, commit, commit, commit
Add "Jailhouse" hypervisor (Recommended LWN article) commit
Use PAGE_GLOBAL for !PCID systems to gain back performance commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- platform
powercap: RAPL: Add support for Cannon Lake commit
amd_nb: Add support for Raven Ridge CPUs commit
memmap: Add a more versatile memmap= operator commit
intel trace hub: Add ACPI glue layer commit
- perf
dump_pagetables: Add the EFI pagetable to the debugfs 'page_tables' directory commit
Boot-time switching between 4- and 5-level paging commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- KVM
Expose SPEC_CTRL Bit(2) to the guest commit
Expose SSBD properly to guests commit
Add reenlightenment MSRs support commit
Make it possible for guests using Hyper-V emulation to do guest->host notification via EVENT_SIGNAL hypercall without a user exit commit, commit
Implement VIRT_SPEC_CTRL support for SSBD commit
Add Force Emulation Prefix for "emulate the next instruction" commit, commit
Provide a capability to disable HLT intercepts commit
Provide a capability to disable MWAIT intercepts commit
Provide a capability to disable PAUSE intercepts commit
nVMX: expose VMX capabilities as MSR features commit, commit
Add support for VMware backdoor I/O ports & Pseduo-PMCs commit, commit, commit, commit, commit, commit, commit
Add support for AMD Core Perf Extension in guest commit
- M68K
Enable RTC for 100-series PowerBooks commit
- MIPS
- POWERPC
- S390
Set bzImage as default image for packaging commit
perf: Add IBM s390 vendor events commit, commit, commit, commit, commit, commit
cio: add util_string sysfs attribute commit
Add a sysfs attribute to control the IFCC handling in case of constant channel errors commit
Add kexec_file_load support commit, commit, commit, commit, commit, commit, commit
sclp: Add support for Store Data SCLP interface commit
zcrypt: Support up to 256 crypto adapters commit, remove deprecated ioctls commit, remove deprecated zcrypt proc interface commit
Automatic enable/disable for the spectre v2 defenses commit
Add sysfs attributes for spectre commit
Report spectre mitigation via syslog commit
Add support for IBM z14 Model ZR1 commit
KVM: provide counters for all interrupt injects/delivery commit
KVM: enable display support for guest commit
- SPARC
- ALPHA
Implement CPU vulnerabilities sysfs functions commit
- RISCV
- NDS32
(FEATURED) Add nds32 port (including interrupt controller driver and timer driver). It is able to boot to shell and passes most LTP-2017 testsuites in nds32 AE3XX platform https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/nds32?id=e71ea3badae55a69a44b8fcb46ae7b547529b3761arch/nds32
12. Drivers
12.1. Graphics
crc: Add support for polling on the data fd. This will make it possible for userspace to know whether reading will block, without blocking on the fd. This makes it possible to drain all queued CRC's in blocking mode, without having to reopen the fd commit
Remove obsolete logo files commit
- amdgpu
(FEATURED) Enable display code by default on all supported GPUs
Adding "wattman" like functionality commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Expose GPU voltage and power and thermal thresholds through hwmon properly commit, commit, commit, commit
Add VCN to firmware query interface commit
Add amdgpu_evict_gtt debugfs entry commit
Initial regamma/degamma/CTM support in DC commit, commit, commit, commit, commit
Basic emulation support: add amdgpu_emu_mode module parameter to control the emulation mode commit
- amdkfd
KFD GPUVM support for dGPU commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- i915
(FEATURED) Cannonlake support enabled commit, commit, commit
AUX-F port support added commit
Icelake base enabling until internal milestone of forcewake support commit, commit, commit
Query uAPI interface (used for GPU topology information currently) commit, commit, commit, commit, commit, commit
Compressed framebuffer support for sprites commit
HDCP support commit, commit, commit, commit, commit, commit, commit, commit, commit
Add kvmgt debugfs entry nr_cache_entries under vgpu commit
- panel
- sun4i
- msm
- omapdrm
HPD support for DVI connector commit
- etnaviv:
Use the drm gpu scheduler commit
- vc4
Expose perf counters to userspace commit
- mali-dp
YUV->RGB conversion support commit
- rcar-du
- tilcdc
DRM panel support commit
meson: Add support for DMT modes on HDMI commit
fbdev: remove blackfin drivers commit
12.2. Storage
- SCSI
aacraid: Implement DropIO sync command commit
lpfc: Add 64G link speed support commit
lpfc: Add PCI Ids for if_type=6 hardware commit
lpfc: Add WQ Full Logic for NVME Target commit
lpfc: Allow set of maximum outstanding SCSI cmd limit for a target commit
mpt3sas: Add PCI device ID for Andromeda commit
raid_class: Add 'JBOD' RAID level commit
scsi_debug: Add two new parameters to scsi_debug driver commit
smartpqi: add in new supported controllers commit
- ufs
Remove the NCR53c406a driver commit
Remove the sym53c416 driver commit
eata: eata-pio: Deprecate legacy EATA drivers commit
- ahci
ata: Add Amiga Gayle PATA controller driver commit
ata: remove bf54x driver commit
12.3. Drivers in the Staging area
imx: add 8-bit grayscale support commit
fsl-dpaa2/ethsw: Add APIs for DPSW object commit, add Freescale DPAA2 Ethernet Switch driver commit, add ethtool support commit
cxd2099: move driver out of staging into dvb-frontends commit
fsl-mc: Move DPBP out of staging commit
fsl-mc: Move DPCON out of staging commit
fsl-mc: Move core bus out of staging commit
imx074: deprecate, move to staging commit
mt9t031: deprecate, move to staging commit
ccree: remove ccree staging driver copy commit
irda: remove the irda network stack and drivers commit
remove iio-trig-bfin-timer driver commit
Add Mediatek MT7621 support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
12.4. Networking
- Bluetooth
Remove unused btuart_cs driver commit
btrsi: add new rsi bluetooth driver commit
btrtl: Add RTL8723D and RTL8821C devices commit
btusb: Add USB ID 7392:a611 for Edimax EW-7611ULB commit
btusb: Add device ID for RTL8822BE commit
btusb: Add support for Intel Bluetooth device 22560 [8087:0026] commit
hci_bcm: Add 6 new ACPI HIDs commit
hci_bcm: Add ACPI HIDs found in Windows .inf files and DSTDs commit
hci_bcm: Add irq_polarity module option commit
qmi_wwan: add support for ublox R410M PID 0x90b2 commit
RDMA/hns: Support rq and cq record doorbell commit, commit, commit, commit
- ath10k
- bnxt_en
can: remove bfin_can driver commit
- cxgb4
dpaa_eth: Add allmulti option commit
enic: Add vxlan offload support for IPv6 pkts commit
- i40e
i40evf: Add support to apply cloud filters commit
i40evf: Add support to configure bw via tc tool commit
ice: Add basic driver framework for Intel(R) E800 Series commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add NXP MCR20A IEEE 802.15.4 transceiver driver commit
igb: add VF trust infrastructure commit
- iwlwifi
- ixgbe
- ixgbevf
lan743x: Add main source files for new lan743x driver commit
- liquidio
- mlxsw
Offload IPv6 multicast routes commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Offload multi-queue RED support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for auto-negotiation disable mode commit
Expose KVD linear parts as resources. This will give the user the ability to control the linear memory division commit, commit, commit, commit, commit
Offloading encapsulated SPAN commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mt76x2: add mac80211 {set,get}_antenna callbacks commit
mlx4_en: Add physical RX/TX bytes/packets counters commit
mlx4: Report TSO capabilities commit
- mlx5
Add core support for vlan push/pop steering action commit
Add flow-steering commands for FPGA IPSec implementation commit
Add packet dropped while vport down statistics commit
Add support for QUERY_VNIC_ENV command commit
E-Switch, Include VF RDMA stats in vport statistics commit
IPSec, Add command V2 support commit
IPSec, Add support for ESN commit
Packet pacing enhancement commit
Implement fragmented completion queue (CQ) commit
- mlx5e
Add VLAN offload features to hw_enc_features commit
Add ethtool priv-flag for Striding RQ commit
Add interface down dropped packets statistics commit
Add vnic steering drop statistics commit
Dump xmit error completions commit
IPSec, Add support for ESP trailer removal by hardware commit
Offload tc vlan push/pop using HW action commit
PFC stall prevention support commit
Support XDP over Striding RQ commit
adi: remove blackfin ethernet drivers commit
bcmgenet: Add support for adaptive RX coalescing commit
- dsa
nixge: Add support for National Instruments XGE netdev commit
ti: cpsw: enable vlan rx vlan offload commit
- hns3
- mvpp2
- phy
- qmi_wwan
Remove cris etrax ethernet driver commit
stmmac: Add support for DWMAC5 and implement Safety Features commit
- systemport
- thunderx
tile: remove ethernet drivers commit
- nfp
Add a separate counter for packets with CHECKSUM_COMPLETE commit
bpf: add basic support for atomic adds commit
bpf: add support for atomic add of unknown values commit
flower: implement ip fragmentation match offload commit
flower: implement tcp flag match offload commit
flower: offload phys port MTU change commit
qed: Adapter flash update support commit
qede: Ethtool flash update support commit
ravb: add support for changing MTU commit
- rsi
- sfc
rtlwifi: enable mac80211 fast-tx support commit
wil6210: Add MultiVIF support to the wil6210 driver. It makes it possible to start multiple interfaces where each interface is an independent WIFI entity such as station, AP and so on commit, commit, commit, commit, commit, commit, commit
12.5. Audio
hda: Add Icelake PCI ID commit
usb-audio: Add native DSD support for Luxman DA-06 commit
usb-audio: UAC2 jack detection commit
initial USB Audio Device Class 3.0 support commit
- ASoC
ADAU7002: Adding ACPI id commit
AMD: Add machine driver for ST DA7219 MAX98357 commit
Intel: Add Kabylake-y Dialog Maxim machine driver commit
Intel: add nau8824 sound card commit
Intel: bytcr_rt5651: Add support for Bay Trail CR / SSP0 using boards commit
add tda7419 audio processor driver commit
ak4458: Add support for AK4458 DAC driver commit
ak5558: Add support for AK5558 ADC driver commit
codecs: Add support for PCM1789 commit
cpcap: new codec commit
dmaengine_pcm: add processing support commit
imx-wm8962: Remove machine driver commit
max9759: Add Amplifier Driver commit
remove blackfin drivers commit
rt5659: Add the support of Intel HDA Header commit
samsung: Add HDMI audio support for Snow commit
samsung: Add support for HDMI audio on TM2 board commit
sgtl5000: add 5 band graphic equalizer commit
stm32: sai: Add support of S/PDIF playback commit
support ROHM BD28623 codec commit
Add UniPhier audio system support commit, commit, commit, commit, commit, commit
12.6. Tablets, touch screens, keyboards, mouses
- HID
Add driver for USB ELAN Touchpad commit
corsair: Add K70 Vengeance and K70 RAPIDFIRE to commit
corsair: Add support for the GLAIVE RGB gaming mouse commit
elecom: add support for EX-G M-XT4DRBK trackball commit
google: add google hammer HID driver commit
lenovo: Add support for IBM/Lenovo Scrollpoint mice commit
sony: Add touchpad support for NSG-MR5U and NSG-MR7U remotes commit
wacom: Add support for 3rd generation Intuos BT commit
Add RAVE SP Powerbutton driver commit
alps: report pressure of v3 and v7 trackstick commit
psmouse: add support for 2nd wheel on A4Tech Dual-Scroll wheel mice commit
pxrc: new driver for PhoenixRC Flight Controller Adapter commit
silead: add Chuwi Hi8 support commit
synaptics: add Intertouch support on X1 Carbon 6th and X280 commit
synaptics: add Lenovo 80 series ids to SMBus commit
xpad: add PDP device id 0x02a4 commit
keyboard: remove bf54x driver commit
misc: remove blackfin rotary driver commit
sur40: Add default settings and module parameters for video controls commit
12.7. TV tuners, webcams, video capturers
v4l2-subdev: implement VIDIOC_DBG_G_CHIP_INFO ioctl commit
v4l2: Add v4l2 control IDs for HEVC encoder commit
af9013: add i2c mux adapter for tuner bus commit
af9013: add pid filter support commit
cx18: remove unused cx18-alsa-mixer commit
- cx231xx
- cx23885
cxd2880: Add driver for Sony CXD2880 DVB-T2/T tuner + demodulator commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mxl5xx: add support for physical layer scrambling commit
- em28xx
i2c: Add TDA1997x HDMI receiver driver commit
i2c: ov772x: Support frame interval handling commit
ivtv: remove ivtv-alsa-mixer commit
lgdt3306a: Add QAM AUTO support commit
- ngene
ov2685: add support for OV2685 sensor commit
ov5640: add JPEG support commit
ov5695: add support for OV5695 sensor commit
Add Renesas CEU driver commit
Remove blackfin capture driver commit
Remove m32r specific arv driver commit
rc: add keymap for iMON RSC remote commit
rc: add new imon protocol decoder and encoder commit
rc: new driver for early iMon device commit
- s5p-mfc
- stm32-dcmi
usbtv: Add USB ID 1f71:3306 to the UTV007 driver commit
uvcvideo: Support multiple frame descriptors with the same dimensions commit
12.8. Universal Serial Bus
Add "quirks" parameter for usbcore commit
introduce per-port over-current counters commit
USB Type-C device-connection, mux and switch support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
misc: uss720: more vendor/product ID's commit
cp210x: add ELDAT Easywave RX09 id commit
cp210x: add ID for NI USB serial console commit
ftdi_sio: add Id for Physik Instrumente E-870 commit
ftdi_sio: add RT Systems VX-8 cable commit
ftdi_sio: add support for Harman FirmwareHubEmulator commit
option: adding support for ublox R410M commit
dwc2: Add ACG support to the driver commit
dwc3: add dual role support using OTG block commit
dwc3: of-simple: add support for the Amlogic Meson GXL and AXG SoCs commit
host: remove tilegx platform glue commit
isp1362: remove blackfin arch glue commit
musb: remove blackfin port commit
phy: ab8500: Drop AB8540/9540 support commit
12.9. Serial Peripheral Interface (SPI)
12.10. Watchdog
renesas_wdt: Add R-Car Gen2 support commit
Add Nuvoton NPCM watchdog driver commit
Remove bfin_wdt driver commit
12.11. Serial
Expose buf_overrun count through proc interface commit
8250-men-mcb: add support for 16z025 and 16z057 commit
8250: Add Nuvoton NPCM UART commit
New RISC-V SBI console driver commit
msm_geni_serial: Add serial driver support for GENI based QUP commit
remove blackfin drivers commit
remove cris/etrax uart drivers commit
remove m32r_sio driver commit
remove tile uart driver commit
Remove metag DA TTY and console driver commit
hvc: remove tile driver commit
Remove bfin_jtag_comm and hvc_bfin_jtag drivers commit
12.12. ACPI, EFI, cpufreq, thermal, Power Management
ACPI: Add Time and Alarm Device (TAD) driver commit
thermal: Add cooling device's statistics in sysfs commit
cpuidle/suspend: Add s2idle usage and time state attributes commit
battery: Add the battery hooking API commit
nfit, address-range-scrub: add module option to skip initial ars commit
pm-graph: AnalyzeBoot v2.2 commit, AnalyzeSuspend v5.0 commit
cpufreq: remove blackfin driver commit
cpufreq: remove cris specific drivers commit
12.13. Real Time Clock (RTC)
Add RTC range commit
ab8500: Drop AB8540 support commit
ds1343: remove undocumented and useless sysfs files commit
isl12026: new driver commit
pcf85363: add alarm support commit
remove bfin driver commit
remove tile driver commit
12.14. Voltage, current regulators, power capping, power supply
reset: Add a driver for the Microsemi Ocelot reset commit
reset: Add Spreadtrum SC27xx PMIC power off support commit
supply: axp20x_battery: add support for AXP813 commit
regulator: qcom: smd: Add pm8998 and pmi8998 regulators commit
12.15. Pin Controllers (pinctrl)
add mt2712 pinctrl driver commit
imx: Add pinctrl driver support for imx6sll commit
nomadik: Drop U8540/9540 support commit
qcom: Add sdm845 pinctrl driver commit
sh-pfc: Initial R-Car M3-N support commit
sunxi: add support for the Allwinner H6 main pin controller commit
Drop TZ1090 drivers commit
Remove adi2/blackfin drivers commit
12.16. Multi Media Card (MMC)
mediatek: add support for MT7622 SoC commit
Export host capabilities to debugfs commit
dw_mmc: add support for hi3798cv200 specific extensions of dw-mshc commit
Remove bfin_sdh driver commit
12.17. Memory Technology Devices (MTD)
jedec_probe: add Eon EN29LV400A IDs commit
maps: remove bfin-async-flash driver commit
nand: Add core infrastructure to deal with NAND devices commit
nand: remove deprecated pxa3xx_nand driver commit
rawnand: remove bf5xx_nand driver commit
12.18. Industrial I/O (iio)
ad5272: Add support for Analog Devices digital potentiometers commit
adc: axp20x_adc: add support for AXP813 ADC commit
adc: driver for ti adc081s/adc101s/adc121s commit
imu: st_lsm6dsx: add hw timestamp support commit
light: lv0104cs: Add support for LV0104CS light sensor commit
potentiometer: mcp4018: driver for Microchip digital potentiometers commit
temperature: Adding support for MLX90632 commit
12.19. Pulse-Width Modulation (PWM)
Remove pwm-bfin driver commit
12.20. Inter-Integrated Circuit (I2C)
12.21. Hardware monitoring (hwmon)
k10temp: Add support for AMD Ryzen w/ Vega graphics commit
k10temp: Add temperature offset for Ryzen 2700X commit
nct6775: Add support for NCT6796D commit
nct6775: Improve fan6/pwm6 support commit
pmbus/adm1275: Add support for ADM1272 commit
ucd9000: Add debugfs attributes to provide mfr_status commit
via-cputemp: support new centaur CPUs commit
12.22. General Purpose I/O (gpio)
Add GPIO driver for Nintendo Wii commit
Add GPIO driver for Spreadtrum SC9860 platform commit
Add Spreadtrum EIC driver support commit
Add Spreadtrum PMIC EIC driver support commit
gpio-rcar: Support S2RAM commit
raspberrypi-exp: Driver for RPi3 GPIO expander via mailbox service commit
Drop TZ1090 drivers commit
remove etraxfs driver commit
12.23. Leds
Extends disk trigger for reads and writes commit
Add driver for support Mellanox regmap LEDs for BMC and x86 platform commit
12.24. DMA engines
Introduce DW AXI DMAC driver commit
mediatek: Add MediaTek High-Speed DMA controller for MT7622 and MT7623 SoC commit
dmatest: add norandom option commit
12.25. Hardware Random Number Generator (hwrng)
ks-sa - add hw_random driver commit
12.26. Cryptography hardware acceleration
bfin_crc: remove blackfin CRC driver commit
caam/qi: add GCM support commit
- ccree
chtls: Chelsio Inline TLS commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
inside-secure: hmac(sha224) support commit
inside-secure: hmac(sha256) support commit
omap-aes: make fallback size configurable commit
omap-aes: make queue length configurable commit
omap-sham: make fallback size configurable commit
omap-sham: make queue length configurable commit
stm32/cryp: add aes gcm / ccm support commit
stm32/cryp: add stm32mp1 support commit
12.27. PCI
portdrv: Remove "pcie_hp=nomsi" kernel parameter commit
portdrv: Remove unnecessary "pcie_ports=auto" parameter commit
histb: Add an optional regulator for PCIe port power control commit
tegra: Add loadable kernel module support commit
tegra: Add power management support commit
Add Altera vendor ID commit
12.28. Thunderbolt
Add 'boot' attribute for devices commit
Add support for Intel Titan Ridge commit
Add support for preboot ACL commit
thunderbolt: Introduce USB only (SL4) security level commit
12.29. FRU Support Interface (FSI)
master-gpio: Add external mode commit
12.30. Clock
Add driver for the si544 clock generator chip commit
davinci: New driver for TI DA8XX CFGCHIP clocks commit
davinci: cfgchip: Add TI DA8XX USB PHY clocks commit
hi3798cv200: add COMBPHY0 clock support commit
imx: add clock driver for imx6sll commit
mediatek: add audsys support for MT2701 commit
meson: add od3 to the pll driver commit
qcom: rpmcc: Add support to XO buffered clocks commit
renesas: cpg-mssr: Add support for R-Car M3-N commit
samsung: Add Exynos5 sub-CMU clock driver commit
socfpga: stratix10: add clock driver for Stratix10 platform commit
stm32mp1: Introduce STM32MP1 clock driver commit
sunxi-ng: add support for the Allwinner H6 CCU commit
uniphier: add Pro4/Pro5/PXs2 audio system clock commit
ux500: Drop AB8540/9540 support commit
atcpit100: Add andestech atcpit100 timer commit
npcm: Add NPCM7xx timer driver commit
Remove metag generic timer driver commit
12.31. Various
HISI LPC: Add ACPI support commit
HISI LPC: Support the LPC host on Hip06/Hip07 with DT bindings commit
amlogic: meson-gx-socinfo: Update soc ids commit
bcma: add HP Stream Notebook commit
char: remove blackfin OTP driver commit
char: remove obsolete ds1302 rtc driver commit
char: remove tile-srom.c commit
edac: remove tile driver commit
ipmi: add a KCS IPMI BMC driver commit
ipmi: add an Aspeed KCS IPMI BMC driver commit
irqchip/pdc: Add PDC interrupt controller for QCOM SoCs commit
irqchip: Add a driver for the Microsemi Ocelot controller commit
irqchip: Andestech Internal Vector Interrupt Controller driver commit
irqchip: Remove metag irqchip drivers commit
mailbox: Add support for Hi3660 mailbox commit
mcb: Add Altera PCI ID to mcb-pci commit
mcb: add Altera PCI ID to mcb-pci commit
misc: Remove Blackfin DSP echo support commit
parport: Add support for BrainBoxes PX272/PX306 MIO card commit
parport_pc: Add support for WCH CH382L PCI-E single parallel port card commit
pcmcia: remove blackfin driver commit
pcmcia: remove m32r drivers commit
phy: amlogic: add USB3 PHY support for Meson GXL and GXM commit
phy: mapphone-mdm6600: Add USB PHY driver for MDM6600 on Droid 4 commit
phy: qcom-qmp: Add support for QMP V3 USB3 PHY commit
phy: qcom-qusb2: Add support for QUSB2 V2 version commit
phy: qcom-qusb2: Add support for different register layouts commit
phy: stm32: add support for STM32 USB PHY Controller (USBPHYC) commit
phy: sun4i-usb: add support for R40 USB PHY commit
remoteproc: Add remote processor coredump support commit
remoteproc: qcom: Introduce sysmon commit
reset: stm32mp1: Enable stm32mp1 reset driver commit
soc/tegra: Add Tegra194 SoC configuration option commit
soc: mediatek: add SCPSYS power domain driver for MediaTek MT7623A SoC commit
soc: qcom: rmtfs-mem: Add support for assigning memory to remote commit
soc: renesas: rcar-sysc: Add R-Car M3-N support commit
soc: ti: Add pm33xx driver for basic suspend support commit
13. List of merges
14. Other news sites
LWN's merge window part 1, part 2, statistics
Phoronix The Many Great Features & Changes Coming For The Linux 4.17 Kernel
Heise.de (german): Die Neuerungen von Linux 4.17