Linux 4.12 has been released on Sun, 2 July 2017.
Summary: This release includes a new BFQ I/O scheduler which provides a much better interactive experience; it also includes preliminary support for Radeon RX Vega graphic cards and support for USB Type-C connectors; improvements to the live kernel patching feature, support for Intel IMSM's Partial Parity Log which allows to close the RAID5 write hole; support for exposing OpenChannel SSDs as device blocks, and another I/O scheduler, Kybe that allows to configure a latency target for reads and writes, ,
Contents
- Prominent features
- Core (various)
- File systems
- Memory management
- Block layer
- Tracing and perf tool
- 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)
- 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)
- Multi Function Devices (MFD)
- Pulse-Width Modulation (PWM)
- Inter-Integrated Circuit (I2C)
- Hardware monitoring (hwmon)
- General Purpose I/O (gpio)
- Leds
- DMA engines
- Cryptography hardware acceleration
- PCI
- Clock
- Various
- List of merges
- Other news sites
1. Prominent features
1.1. Preliminary Radeon Vega support
This release adds preliminary support for Radeon RX Vega graphic cards.
Code: merge, commit, commit, commit
1.2. USB Type-C support
This release adds support for USB Type-C connectors. USB Type-C, commonly known as simply USB-C, is a 24-pin USB connector system allowing transport of data and energy.
Code: commit, commit, commit, commit
1.3. New BFQ I/O scheduler for a more reponsive desktop
BFQ (Budget Fair Queuing) is a new I/O scheduler. For personal systems, BFQ provides low latency for interactive applications, low latency for soft real-time applications, higher speed for code-development tasks, high throughput, and strong fairness, bandwidth and delay guarantees. For servers, besides the same benefits as above, BFQ guarantees: audio and video-streaming with zero or very low jitter and drop rate; fast retrieval of WEB pages and embedded objects; real-time recording of data in live-dumping applications (e.g., packet logging); responsiveness in local and remote access to a server. For more details and benchmarks, see the Documentation or the project site
Recommended LWN article: Two new block I/O schedulers for 4.12
Code: commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit ,commit, commit, commit, commit
1.4. New Kyber I/O scheduler
The Kyber I/O scheduler is a low-overhead scheduler suitable for multiqueue and other fast devices. Given target latencies for reads and synchronous writes, it will self-tune queue depths to achieve that goal, similary to blk-wbt.
Recommended LWN article: Two new block I/O schedulers for 4.12
1.5. Progress in Live kernel patching
Live patching is a feature merged in Linux 4.0 that allows to patch the kernel code in running systems, which in turn allows to patch security issues without rebooting.
This release adds a so-called per-task consistency model - a foundation which will eventually enable to patch those ~10% of security patches which change function or data semantics. This is the biggest remaining piece needed to make livepatch more generally useful. This code stems from the design proposal made in November 2014. It's a hybrid of kGraft and kpatch: it uses kGraft's per-task consistency and syscall barrier switching combined with kpatch's stack trace switching.
Recommended LWN article: Topics in live kernel patching
1.6. Add support for Intel IMSM's Partial Parity Log
This release adds support for the Partial Parity Log feature found in Intel IMSM raid array. This feature is another way to close the RAID 5 Write Hole. PPL is available for md version-1 metadata and external (specifically IMSM) metadata arrays. It can be enabled using mdadm option --consistency-policy=ppl.
Documentation: Documentation/md/raid5-ppl.txt
Code: commit, commit, commit, commit, commit, commit
1.7. Expose OpenChannel SSDs as device blocks
This release introduces pblk, a host-side FTL for Open-Channel SSDs to expose them like block devices. Open-Channel SSDs are SSDs that do not include a Flash Translation Layer, support for them was included in Linux 4.4. pblk is an implementation of a Flash Transaction Layer in the Linux kernel, which allows data placement decisions, and I/O scheduling to be managed by the host, enabling users to optimize the SSD for their specific workloads.
Documentation: http://lightnvm.io/pblk-tools/
Code: commit
2. Core (various)
Change livepatch to use a basic per-task consistency model (FEATURED) commit, commit, commit
epoll: Add busy poll support to epoll with socket fds. The main idea it is that when there is only one event left, the kernel will beging polling for events with the same NAPI ID commit, commit, commit, commit, commit, commit, commit, commit
namespaces: expose task pid_ns_for_children in /proc/PID/ns, needed by software like CRIU commit, commit
task scheduler: Add 'sched-pelt' tool commit
- RCU locking
taskstats: add elapsed time, user CPU time and system CPU time for TGID command commit
Add better clang cross build support commit
tty: Disable default console blanking interval commit
vfs: add common GETFSMAP ioctl definitions commit
uio: Allow handling of non page-aligned memory regions commit
3. File systems
- XFS
- EXT4
- CIFS
- F2FS
- FUSE
Add support for pid namespaces commit
- NFS
Remove the objlayout driver commit
- ORANGEFS
- UBIFS
Add CONFIG_UBIFS_FS_SECURITY to disable/enable security labels commit
- AFFS
4. Memory management
Try to reduce fragmenting fallbacks commit, commit, commit, commit, commit, commit, commit, commit
Print non-populated zones in /proc/zoneinfo commit
MADV_FREE has several issues that make it unusable in software like jemalloc: doesn't support system without swap enabled, increases memory pressure, and accounting problems. This release puts MADV_FREE pages into the LRU_INACTIVE_FILE list, enables MADV_FREE for swapless systems and improves statistic accounting commit, commit, commit, commit, commit, commit
memcontrol cgroup: introduced three new entries in memory.stat: workingset_refault (number of refaults of previously evicted pages), workingset_activate (number of refaulted pages that were immediately activated), workingset_nodereclaim (number of times a shadow node has been reclaimed) commit, commit
memcontrol cgroup: provide shmem statistics commit
5. Block layer
(FEATURED) introduce the BFQ-v0 I/O scheduler commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit ,commit, commit, commit, commit
(FEATURED) introduce Kyber multiqueue I/O scheduler commit, commit
CFQ scheduler: Disable writeback throttling (feature introduced in Linux 4.10) by default, since does not play well with CFQ since that also tries to throttle asynchronous writes. As a result asynchronous writeback can get starved in presence of readers [https://git.kernel.org/linus/142bbdfccc8b3e9f7342f2ce8422e76a3b45beae commit
multiqueue: Export queue state through /sys/kernel/debug/block/*/state commit
blk-throttle improvements: this release includes a scalable framework for implementing scalable priotization - particularly for blk-mq, but applicable to any type of block device. The interface is marked experimental for now commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- Device Mapper (DM)
Add integrity target. It emulates a block device that has additional per-sector tags that can be used for storing integrity information. The dm-integrity target can be used with the dm-crypt target - in this situation the dm-crypt target creates the integrity data and passes them to the dm-integrity target. In this mode, the dm-crypt and dm-integrity targets provide authenticated disk encryption - if the attacker modifies the encrypted device, an I/O error is returned. The dm-integrity target can also be used as a standalone target, in this mode it calculates and verifies the integrity tag internally. In this mode, the dm-integrity target can be used to detect silent data corruption on the disk or in the I/O path commit, commit, commit
dm crypt: Add a new authenticated encryption feature to the DM crypt target that builds on the capabilities provided by the DM integrity target. It allows the use of per-sector metadata, provided by the dm-integrity module, for integrity protection and persistently stored per-sector Initialization Vector (IV) commit, commit, commit
A major update for DM cache that reduces the latency for deciding whether blocks should migrate to/from the cache. The bio-prison-v2 interface supports this improvement by enabling direct dispatch of work to workqueues rather than having to delay the actual work dispatch to the DM cache core. So the dm-cache policies are much more nimble by being able to drive IO as they see fit. One immediate benefit from the improved latency is a cache that should be much more adaptive to changing workloads commit, commit, commit, commit
dm raid: add raid4/5/6 journal write-back support via journal_mode option commit
- MD
md-cluster: add the support for resize commit, commit
Use consistency_policy to allow removing journal feature commit
Add Partial Parity Log (ppl) feature found in Intel IMSM raid array (FEATURED) commit, commit, commit, commit, commit, commit
Allow creation of mdNNN arrays via md_mod/parameters/new_array commit
Support disabling of create-on-open semantics with create_on_open module option commit
mq-deadline: add debugfs attributes commit
blkfront: add uevent for size change commit
(FEATURED) lightnvm: introduces pblk, a host-side translation layer for Open-Channel SSDs to expose them like block devices commit
- libnvdimm
- nvmem
nbd: Add a netlink interface commit, commit, commit, commit, commit
null_blk: add blocking mode commit
rbd: exclusive map option commit
dax: add a facility to lookup a dax device by 'host' device name commit
brd: remove discard support commit
Remove the osdblk driver commit
Remove the mg_disk driver commit
Remove the obsolete hd driver commit
6. Tracing and perf tool
- perf
Allow user probes on versioned symbols. Symbol versioning, as in glibc, results in symbols being defined as: <real symbol>@[@]<version> commit
ftrace: Add support for --pid option, which enables to trace existing process by its pid commit
ftrace: Add support for -a/--all-cpus and -C/--cpu options, used for controlling tracing CPUs commit
list: Move the printing of perf expressions and internal events to a new --details flag commit
report: Introduce --inline option, which will cause the inline stack to be printed if a callgraph address belongs to an inlined function commit, commit, commit, commit
sched timehist: Add --next option which shows the next task for each context switch, providing more context for the sequence of scheduler events commit
script: Add brstackinsn field to reuse the x86 instruction decoder used in the Intel PT code to study hot paths to samples commit
Allow perf to record information required to associate samples to namespaces. A new --namespaces option has been added to perf record, a new --show-namespace-events option has been added to perf scripts commit, commit, commit
tools: Add cgroup_id sort order keyword commit
stat: make system wide (-a) the default option if no target was specified and some conditions are met commit
tools: Allow sorting by symbol size with new sort key symbol_size commit
trace: Beautify statx syscall 'flag' and 'mask' arguments commit
Add uncore events for Broadwell client commit, Haswell client commit, Ivy Bridge client commit, Sandy Bridge client commit, Skylake client commit
- ftrace
- BPF
kprobes: expose maxactive (maximum limit of how many calls in parallel the kretprobe can catch) for kretprobe in /sys/kernel/debug/tracing/kprobe_events commit
7. Virtualization
- Xen
tools/kvm_stat: add '%Total' column commit, add interactive command 'r' commit, add interactive command 'c' commit, add option '--guest' commit
8. Cryptography
- KEYS
Add a system blacklist keyring that is used to store information about blacklisted certificates and signatures commit
Add KEYCTL_RESTRICT_KEYRING keyctl(2) command. With it, existing keyrings can be configured to check the content of keys before they are linked, and then allow or disallow linkage of that key to the keyring commit, commit, commit, commit
Add SP800-56A KDF support for DH commit
scomp: add support for deflate rfc1950 (zlib) commit
X.509: Allow X.509 certs to be blacklisted commit
9. Security
Add TEE subsystem. A TEE (Trusted Execution Environment) driver is a driver that interfaces with a trusted OS running in some secure environment, for example, TrustZone on ARM cpus, or a separate secure co-processor etc. The TEE subsystem can serve a TEE driver for a Global Platform compliant TEE, but it's not limited to only Global Platform TEEs commit, commit, commit
selinux: add a security hook for prlimit commit
Introduce CONFIG_SECURITY_WRITABLE_HOOKS for RO hardening of LSM hooks commit, commit
ima: provide ">" and "<" operators for fowner/uid/euid rules commit
audit: log module name on module deletion commit
tpm:implement contextual TPM command 'spaces' commit, commit
10. Networking
Generic XDP driver, so that anyone can test XDP even if they lack a networking device whose driver has explicit XDP support commit
Allow configuring default qdisc in kernel configuration commit
TCP Fast Open: Add snmp counter for blackhole detection commit
TCP Fast Open: Disable active side TCP Fast Open in certain scenarios commit
Add sysctl to toggle early demux for tcp and udp commit
IPv4: add support for ECMP hash policy choice via a new sysctl called fib_multipath_hash_policy and also adds support for L4 hashes commit
IPv6: Provide ipv6 version of disable_policy sysctl, ie. Allows IPsec processing to be skipped on terminating packets on a per-interface basis commit
IPv6: add support for NETDEV_RESEND_IGMP event similar to how it works for IPv4 commit
IPv6: Add sysctl (accept_ra_rt_info_min_plen) for minimum prefix len acceptable in Route Information Options commit
TCP: Permit user set TCP_MAXSEG to default value commit
TCP: remove per-destination timestamp cache commit
TCP: remove tcp_tw_recycle sysctl commit
sockets: introduce SO_MEMINFO getsockopt for reading of SK_MEMINFO_VARS via socket option. This way an application can get all meminfo related information in single socket option call instead of multiple calls. commit
Enable tx timestamping on loopback and dummy commit
eBPF: Add a helper function to retrieve socket uid. This is useful to perform per-UID accounting of network traffic or per-UID packet filtering commit
eBPF: Add a helper function to get socket cookie in eBPF commit, commit
VSOCK: Add vsockmon virtual device to monitor AF_VSOCK sockets commit, commit
bridge: add per-port broadcast flood flag commit
can: initial network namespace support commit, commit, commit, commit
Adds support for parsing MPLS flows in the flow dissector and the flower classifier. Each of the MPLS TTL, BOS, TC and Label fields can be used for matching commit, commit
Add support for pipeline debug (dpipe). It introduces capability for exporting the ASICs pipeline abstraction via devlink infrastructure, which should serve as an complementary tool. This infrastructure allows the user to get visibility into the ASIC by modeling it as a set of match/action tables commit, commit, commit, commit, commit, commit, commit, commit
ip_tunnel: Allow policy-based routing through tunnels commit, commit
MPLS: allow TTL propagation to/from IP packets to be configured commit, commit
net sched action: Complete the JUMPX opcode commit
- distributed switch architecture
bridge: allow to add externally learned entries from user-space commit, commit
netconf: Add support for RTM_DELNETCONF. It is sent when a device is deleted commit, commit, commit, commit
rtnetlink: Add dump all for netconf commit
sched: make default fifo qdiscs appear in the dump commit
- netfilter
nft_ct: add helper set support; it allows to assign connection tracking helpers to connections via nft objref infrastructure commit
nft_exthdr: Allow checking TCP option presence, too commit
nft_fib: Support existence check commit
nft_hash: support of symmetric hash according to source ip address and port, and destination ip address and port commit
Netlink extended ACK support: commit, commit, commit, commit, commit
- Wireless
packet: add socket option PACKET_FANOUT_FLAG_UNIQUEID to assign new fanout group id commit
- SCTP:
TIPC: add support for stream/seqpacket socketpairs commit
TIPC: allow rdm/dgram socketpairs commit
xfrm: Add an IPsec hardware offloading API commit
Replace 2 jiffies with a sysctl to enable softirq tuning. The new sysctl, netdev_budget_usecs, allows to set the maximum number of microseconds in one NAPI polling cycle commit
ethtool: add CRC32 as an RSS hash function commit
ethtool: Add ESP offload features commit
11. Architectures
- ARM
- Device Tree Source
BCM5301X: Add basic DT for Linksys EA6300 V1 commit, for Linksys EA9200 commit, for Linksys EA9500 commit, for BCM953012HR commit, for TP-LINK Archer C5 V2 commit
Add a devicetree for Raidsonic NAS IB-4220-B commit
Add a devicetree for Teltonika RUT1xx commit
Add a devicetree for Wiliboard WBD-111 commit and Wiliboard WBD-222 commit
add device tree for Gemini SoC and SQ201 commit
add support for I2SE Duckbill 2 485 commit, I2SE Duckbill 2 EnOcean commit, I2SE Duckbill 2 SPI commit, I2SE Duckbill 2 boards commit
armada-385-synology-ds116: add support for Synology DS116 NAS commit
armada-385: add support for the Linksys WRT1900ACS (Shelby) commit
imx6: add ZII RDU2 boards commit
imx6q: Add Engicam i.CoreM6 Quad/Dual OpenFrame Cap 10.1 initial support commit, add Engicam i.CoreM6 Quad/Dual OpenFrame Cap 12.3 initial support commit
imx6qp-nitrogen6_som2: add Quad Plus variant of the SOM commit
imx7d-sdb: Add sht11 Click Board support commit
imx: add Gateworks Ventana GW5903 support commit, add Gateworks Ventana GW5904 support commit
rockchip: Add support for PCM-947 carrier board commit, add support for phyCORE-RK3288 SoM commit, add dts for RK3288-Tinker board commit
stm32: Add STM32H743 MCU and STM32H743i-EVAL board commit, add a new SOC - STM32H743 commit
gemini: DT for the Cortina Gemini SoC platforms commit, commit
KVM: Support for userspace virtual interrupt controller (slower, but necessary for KVM on the weird Broadcom SoCs used by the Raspberry Pi 3) commit, commit
uefi: Randomize the base of the UEFI rt services region commit
perf: arm_pmu: add ACPI framework commit
- Device Tree Source
- ARM64
- Device Tree Source
meson-gxl: Add support for HwaCom AmazeTV commit, add support for the Khadas VIM board commit
allwinner: h5: add Allwinner H5 commit, add support for the Orange Pi PC 2 board commit, commit
Add basic DT to support Spreadtrum's SP9860G commit
Add support for FSL's LS1088A SoC commit
freescale: ls2088a: Add DTS support for FSL's LS2088A SoC commit
hisilicon: add dts files for hi3798cv200-poplar board commit
rockchip: add Gru/Kevin DTS commit, add RK3328 eavluation board devicetree commit, commit
Add ARMv8.3 HWCAP bits for: Support for Javascript conversion instruction commit, support for complex number instructions commit, support for weaker release consistency commit
bpf: implement jiting of BPF_XADD commit
tpm_crb: Enable TPM CRB interface for ARM64 commit
KVM: Add support for VPIPT I-caches commit
KVM: vgic-its: Add KVM_DEV_ARM_ITS_SAVE/RESTORE_TABLES commit
KVM: vgic-v3: Add KVM_DEV_ARM_VGIC_SAVE_PENDING_TABLES commit
- Device Tree Source
- MIPS
Basic support for hardware virtualization (ImgTec P5600/P6600/I6400 and Cavium Octeon III) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add 48-bit VA space (and 4-level page tables) for 4K pages commit
BPF: Add JIT support for SKF_AD_HATYPE commit
- POWERPC
- KVM
- crypto
64s: Support new device tree binding for discovering CPU features commit
fadump: reuse crashkernel parameter for fadump memory reservation commit
kprobes: Add support for KPROBES_ON_FTRACE commit
Increase VA range to 128TB commit
Add support for runtime configuration of ASLR limits commit
Enable mappings above 128TB commit
- perf
powernv: Add OPAL exports attributes to sysfs commit
powernv: Introduce address translation services for Nvlink2 commit
pseries: Enable VFIO commit
- xmon
Add NMI IPI infrastructure commit
- S390
debugfs: introduce top-level 's390' directory commit
cpum_cf: add support for the MT-diagnostic counter set (z13) commit
sysinfo: provide remaining stsi information via debugfs commit
cpuinfo: show facilities as reported by stfle commit
sysinfo: provide raw stsi 15,1,x data via debugfs commit
Add a system call for guarded storage commit
crypto: Provide s390 specific arch random functionality commit
trng: Introduce s390 TRNG device driver commit
vfio-ccw: vfio support for I/O subchannel devices for Linux/s390 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- KVM
- SPARC
- X86
Enable KASLR by default commit
Add support for Intel Memory Bandwidth Allocation. Bandwidth throttling is a core specific mechanism on some of Intel SKUs. Using a high bandwidth and a low bandwidth setting on two threads sharing a core will result in both threads being throttled to use the low bandwidth commit, commit, commit, commit, commit
Detect CPUID faulting support. Intel supports faulting on the CPUID instruction beginning with Ivy Bridge. When enabled, the processor will fault on attempts to execute the CPUID instruction with CPL>0. This will allow a ptracer to emulate the CPUID instruction commit
arch_prctl: Add ARCH_[GET|SET]_CPUID to get or set the CPUID state. Intel supports faulting on the CPUID instruction beginning with Ivy Bridge commit
Various fixes related to 32-bit mmap() compat syscall returning address over 4Gb in applications, launched from 64-bit binaries - motivated by C/R frameworks such as Virtuozzo commit, commit, commit
perf: Add Top Down events to Intel Goldmont commit
Add support for earlyprintk via USB3 debug port commit
perf: Add support for multiple IOMMUs to perf by exposing an AMD IOMMU PMU for each IOMMU found in the system commit
ftrace: Add -mfentry support to x86_32 with DYNAMIC_FTRACE set commit
intel_rdt: Add cpus_list rdtgroup file commit
More work on Intel 5-level paging enablement merge
intel_idle: add Gemini Lake support commit
iommu/vt-d: Add an option to disable Intel IOMMU force on commit
iommu: Allow default domain type to be set on the kernel command line commit
RAS: Add a Corrected Errors Collector commit
- platform
- virtualization
- AVR32
- METAG
Add 64-bit get_user support commit
- NIOS2
12. Drivers
12.1. Graphics
- amdgpu
Preliminary vega10 support (FEATURED) commit, commit, commit, merge
Add power profile sysfs entries commit, commit, commit, commit, commit, commit
Add power consumption display support in debugfs commit
Enable LEDs on Fiji boards commit
Enable GFX/UVD/VCE PG for Bristol commit
Enable gfx/system/vce clockgating on Polars12 commit
- intel
Enable atomic modesetting by default on supported platforms commit
GVT: Turn on KBL platform support commit
debugfs: Add i915_hpd_storm_ctl commit
uc: Add params for specifying firmware commit
Show the current i915_params in debugfs/i915_capabilites commit
Use atomic page flip for intel again commit
Support explicit fencing for execbuf commit
Enable userspace to opt-out of implicit fencing commit
Add missing SKL ID commit
- nouveau
secboot: add support for SEC LS firmware commit, support for loading LS PMU firmware commit, support for r364 ACR commit, support for r367 ACR commit, support for r375 ACR commit, support for unload blob bootloader commit, support optional falcons commit, support running ACR on SEC commit, support standard NVIDIA HS binaries commit
vmwgfx: Add atomic modesetting support merge
omapdrm: Add support for render nodes commit
mediatek: add support for Mediatek SoC MT2701 commit
vc4: Add HDMI audio support commit
- mali-dp
- panel
- rcar-du
- ipu-v3
- etnaviv
- fb-helper
meson: HDMI Synopsys Controller support for Amlogic Meson Display commit, commit, commit, commit
- rockchip
- bridge
tegra: add VIC support commit
dma-buf: fence debugging commit
Add a new connector atomic property for link status commit
qxl: Enable atomic modesetting ioctl commit
host1x: Add IOMMU support commit
backlight: Add support for Arctic Sand LED backlight driver chips commit
12.2. Storage
Add Fabric assigned WWN support commit
ata: add Palmchip BK3710 PATA controller driver commit
ata: ahci: add support for DaVinci DM816 SATA controller commit
nvme: improve performance for virtual NVMe devices commit
nvme_fc: add controller reset support commit
pata: remove the at91 driver commit
- SCSI
- fnic
hisi_sas: add softreset function for SATA disk commit
hpsa: update pci ids commit
lpfc: Add MDS Diagnostic support commit
- stex
storvsc: Add support for FC rport commit
12.3. Drivers in the Staging area
s5p-cec: add cec-notifier support, move out of staging commit
Driver for the DPAA2 DPIO object commit, commit, commit, commit, commit, commit, commit
speakup: add unicode variant of /dev/softsynth commit
atomisp: Add support for the Intel IPU v2 commit
Add rtl8723bs sdio wifi driver commit
android: remove lowmemory killer from the tree commit
- android ion
bcm2835-audio: Add support for simultanous HDMI and Headphone audio commit
ccree - introduce CryptoCell HW driver commit, commit, commit, commit, commit, commit
fbtft: add adriver for SH1106 commit
fsl-dpaa2/eth: Add Freescale DPAA2 Ethernet driver commit
(FEATURED) typec: USB Type-C Port Manager (tcpm) commit
typec: Fairchild FUSB302 Type-c chip driver commit
typec: Type-C Port Controller Interface driver (tcpci) commit
iio:adc:lpc32xx Move out of staging commit
12.4. Networking
- Bluetooth
- Infiniband
Add support for fd objects commit
Add support for idr types commit
hfi1: OPA_VNIC RDMA netdev support commit
hfi1: VNIC SDMA support commit
hfi1: Virtual Network Interface Controller (VNIC) HW support commit
ipoib: add get_link_ksettings in ethtool commit
opa-vnic: Addition of the VNIC driver from Intel. While IPoIB provides IP over InfiniBand (and *only* IP, no lower layer protocol headers are allowed or supported), the VNIC driver presents a virtual Ethernet device with support for things like varying Ethertypes, VLANs, priorities and other features of Ethernet. The virtual devices are centrally managed by the OPA fabric manager, making this (for the time being) a strictly OPA specific feature commit, commit, commit, commit, commit, commit, commit, commit, commit
rxe: Add port protocol stats commit
rxe: Offload CRC calculation when possible commit
- mlx5
RDMA net device support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Enable IPoIB acceleration commit
Support congestion related counters commit
Update the list of the PCI supported devices commit
Offloading of TC pedit (header re-write) action commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for RXFCS feature flag commit
Add support to neighbour update flow commit
ath9k: Add Dell Wireless 1601 with wowlan capability commit
ath9k_htc: Add support of AirTies 1eda:2315 AR9271 device commit
- bnxt_en
Add 100G link speed reporting for BCM57454 ASIC in ethtool commit
Add PHY loopback to ethtool self-test commit
Add basic WoL infrastructure commit
Add basic ethtool -t selftest support commit
Add ethtool get_wol method commit
Add ethtool mac loopback self test commit
Add ethtool set_wol method commit
Add interrupt test to ethtool -t selftest commit
bonding: add 802.3ad support for 25G speeds commit
brcmfmac: add support to move wiphy instance into network namespace commit
- can
- dpaa_eth
xgene-v2: t adds support for RGMII based 1GbE hardware commit, commit, commit, commit, commit, commit, commit, commit
- e1000e
Add Support for 38.4MHZ frequency commit
Add Support for CannonLake commit, commit
- ftgmac100
gtp: support SGSN-side tunnels commit
- i40e
ibmvnic: Remove debugfs support commit
ieee802154: Add CA8210 IEEE 802.15.4 device driver commit
igb/igbvf: Add VF MAC filter request capabilities commit
igb: Add support for ethtool private flag to allow use of legacy Rx commit
- iwlwifi
- ixgbe
liquidio: add support for XPS commit
mac80211_hwsim: Add channel 169 (5845 MHz) commit
mlx4: add rx_alloc_pages counter in ethtool -S commit
- mlxsw
Remove debugfs interface commit
Add support for TC flower offload statistics commit, commit, commit, commit, commit, commit, commit, commit, commit
spectrum: Add support for VLAN offload for cls_flower commit, commit
Enable VRF offload commit, commit, commit, commit, commit, commit, commit, commit, commit
- Distributed Switch Architecture
bcmgenet: add support for the GENETv5 hardware commit
dwc-xlgmac: Initial driver for DesignWare Enterprise Ethernet commit, commit
bgmac: driver power manangement commit
ks8851: Added support for half-duplex SPI commit
mvneta: support suspend and resume commit
mvpp2: finally add the PPv2.2 compatible string commit
phy: bcm7xxx: add support for 28nm EPHY commit
stmmac: Multiqueue support commit, commit, commit, commit, commit
stmmac: Use AVB mode by default commit
stmmac: dwc-qos: Add Tegra186 support commit
thunderx: Enable TSO and checksum offloads for ipv6 commit
qmi_wwan: add Telit ME910 support commit
qmi_wwan: add qmap mux protocol support commit
vrf: performance improvements for IPv4 commit and IPv6 commit
netvsc: enable GRO commit
netvsc: implement NAPI commit
- nfp
Add extended error messages commit
Add port state refresh commit
Add support for .set_link_ksettings() commit
Add support for reporting CRC32 hash function commit
Allow multi-stage NSP configuration commit
Implement .ndo_get_phys_port_name() commit
move more ring debug info to debugfs commit
report auto-negotiation in ethtool commit
report link speed from NSP commit
report port type in ethtool commit
- qed/qede
qmi_wwan: add another Lenovo EM74xx device ID commit
rt2x00: add support for MT7620 commit
rtlwifi: Add code to read new versions of firmware commit
smsc911x: Adding support for Micochip LAN9250 Ethernet controller commit
stmmac: Add support for SIMATIC IOT2000 platform commit
sunvnet: add stats to track ldom to ldom packets and bytes commit
sunvnet: count multicast packets commit
wil6210: remove HALP voting in debugfs ioblob commit
wil6210: support 8KB RX buffers commit
12.5. Audio
fireface: Add new driver for RME Fireface series commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
firewire-motu: new driver for MOTU FireWire series commit, commit, commit, commit, commit, commit, commit ,commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
firewire-digi00x: add support for console models of Digi00x series commit, allow user space applications to read/write MIDI messages for all ports commit
- hda
- ASoC
Add support for Cirrus Logic CS35L35 Amplifier commit
Add support for Maxim Integrated MAX98927 Amplifier commit
Intel: Atom: enable BYT/CHT+DA7213 machine driver commit
Intel: Skylake: Add loadable module support on KBL platform commit, add support for deferred DSP module bind commit
Intel: add machine driver for BYT/CHT + DA7213 commit
Intel: boards: add card for MinnowBoardMax/Up I2S access commit
dio2125: add dio2125 amp driver commit
es7134: add es7134 DAC driver commit
hisilicon: Add hi6210 i2s audio driver commit
mediatek: Add mt2701-wm8960 machine driver commit
nau8824: new driver commit
rsnd: enable clock-frequency for both 44.1kHz/48kHz commit
samsung: Add Odroid ASoC machine driver commit
sgtl5000: Allow LRCLK pad drive strength to be changed commit
wm_adsp: Add support for ADSP2V2 commit
zx-tdm: add zte's tdm controller driver commit
12.6. Tablets, touch screens, keyboards, mouses
- HID
Accutouch: Add driver for ELO Accutouch 2216 USB Touchscreens commit
Add quirk driver for NTI USB-SUN adapter commit
asus: Add support for T100 keyboard commit
asus: support Republic of Gamers special keys commit
asus: support backlight on USB keyboards commit
logitech-hidpp: add a sysfs file to tell we support power_supply commit
logitech-hidpp: add battery support for HID++ 2.0 devices commit
logitech-hidpp: add support for battery status for the K750 commit
logitech-hidpp: battery: provide CAPACITY_LEVEL commit
logitech-hidpp: battery: provide ONLINE property commit
logitech-hidpp: enable HID++ 1.0 battery reporting commit
sony: Expose DS3 motion sensors through separate device commit
sony: Make DS4 bt poll interval adjustable commit
sony: Report DS4 motion sensors through a separate device commit
sony: Support motion sensor calibration on dongle commit
sony: Treat the ds4 dongle as a separate device commit
wacom: generic: add 3 tablet touch keys commit
wacom: generic: add mode change touch key commit
wacom: generic: support touch on/off softkey commit
add support for PlayStation 1/2 joypads connected via SPI commit
bma150 - remove support for bma150 commit
pm8xxx-vib - add support for pm8916's vibrator commit
psmouse - add support for SMBus companions commit
psmouse - implement fast reconnect option commit
soc_button_array - add support for ACPI 6.0 Generic Button Device commit
synaptics - add support for Intertouch devices commit
tsc2007 - add iio interface to read external ADC input and temperature commit
xpad - add USB IDs for Mad Catz Brawlstick and Razer Sabertooth commit
cpcap-pwrbutton: New driver commit
touchscreen: mxs-lradc: Add support for touchscreen commit
12.7. TV tuners, webcams, video capturers
dvb-usb-cxusb: Geniatech T230C support commit
em28xx: Add new USB ID eb1a:5051 commit
exynos-gsc: Add support for NV{16,21,61}M pixel formats commit
Add a driver for the ov5645 camera sensor commit
i2c: Add support for OV5647 sensor commit
ti-vpe: vpdma: add support for user specified stride commit
media: ti-vpe: vpe: allow use of user specified stride commit
mn88472: implement PER statistics commit, implement cnr statistics commit, implement signal strength statistics commit
rainshadow-cec: new RainShadow Tech HDMI CEC driver commit
rc: promote lirc_sir out of staging commit
si2157: Add support for Si2141-A10 commit
si2168: Si2168-D60 support commit
uvcvideo: Add support for Intel SR300 depth camera commit
vsp1: Add HGO support commit, add HGT support commit, add histogram support commit, support histogram generators in pipeline configuration commit, wpf: Implement rotation support commit
vcodec: mediatek: Add Mediatek JPEG Decoder Driver commit
vimc: Virtual Media Controller core, capture and sensor commit
12.8. Universal Serial Bus
serial: ftdi_sio: add Olimex ARM-USB-TINY(H) PIDs commit
serial: ftdi_sio: add device ID for Microsemi/Arrow SF2PLUS Dev Kit commit
serial: qcserial: add more Lenovo EM74xx device IDs commit
Add driver for xhci debug capability commit
Add DBC debug device support to usb_debug commit
(FEATURED) USB Type-C connector class commit
typec: add driver for Intel Whiskey Cove PMIC USB Type-C PHY commit
Add CONFIG_USB_PCI for system have both PCI HW and non-PCI based USB HW commit
chipidea: core: add sysfs group commit
dwc2: Add support for STM32F429/439/469 USB OTG HS/FS in FS mode (internal PHY) commit
dwc3: Add dual-role support commit
dwc3: pci: add Intel Cannonlake PCI IDs commit
gadget: udc: renesas_usb3: add USB ID signal monitoring commit
gadget: udc: renesas_usb3: add extcon support commit
gadget: udc: renesas_usb3: add support for usb role swap commit
host: plat: Enable xHCI plat runtime PM commit
musb: Add support of CPPI 4.1 DMA controller to DA8xx commit
orion-ehci: Add support for the Armada 3700 commit
serial: option: add Telit ME910 support commit
xhci: plat: Enable async suspend/resume commit
12.9. Serial Peripheral Interface (SPI)
spi: orion: add LSB support commit
12.10. Serial
uartlite: Adding a kernel parameter for the number of uartlites commit
altera_jtaguart: add earlycon support commit
8250_fintek: Enable high speed mode on Fintek F81866 commit
altera_uart: add earlycon support commit
8250_early: Add earlycon support for Palmchip UART commit
12.11. ACPI, EFI, cpufreq, thermal, Power Management
- ACPI
Add sysfs entries for CPPC perf capabilities commit
Add opregion driver for Intel CHT Whiskey Cove PMIC commit
Drop support for force_remove commit
iasl: add ASL conversion tool commit
nfit: add support for acpi 6.1 dimm state flags commit
nfit: allow override of built-in bitmasks for nvdimm DSMs commit
nfit: allow specifying a default DSM family commit
arm64: Add GTDT table parse driver commit
arm64: Add SBSA Generic Watchdog support in GTDT driver commit
arm64: Add memory-mapped timer support in GTDT driver commit
efi: Enable ACPI BGRT handling on arm64 commit
thermal: bcm2835: add thermal driver for bcm2835 SoC commit
thermal: broadcom: add Northstar thermal driver commit
thermal: core: Add a back up thermal shutdown mechanism commit
thermal: da9062/61: Thermal junction temperature monitoring driver commit
tools: power: pm-graph: AnalyzeBoot v2.0 commit
tools: power: pm-graph: AnalyzeSuspend v4.6 commit
tools: power: pm-graph: Package makefile and man pages commit
cpufreq: intel_pstate: Active mode P-state limits rework commit
cpufreq: mediatek: Add support for MT8176 and MT817x commit
cpufreq: Add Tegra186 cpufreq driver commit
cpufreq: intel_pstate: Add support for Gemini Lake commit
powercap: intel_rapl: Add support for Gemini Lake commit
12.12. Real Time Clock (RTC)
sh: add support for rza series commit
cpcap: new rtc driver commit
ds1307: support m41t0 variant commit
12.13. Voltage, current regulators, power capping, power supply
reset: syscon-poweroff: add a mask property commit
reset: Add a driver for the Gemini poweroff commit
regulator: pfuze100-regulator: add coin support commit
regulator: tps65132: add regulator driver for TI TPS65132 commit
regulator: Add ROHM BD9571MWV-M PMIC regulator driver commit
reset: Add Altera Arria10 SR Reset Controller commit
reset: Add i.MX7 SRC reset driver commit
supply: bq24190_charger: Add support for bq24192i commit
supply: New driver for LEGO MINDSTORMS EV3 battery commit
supply: add battery driver for AXP20X and AXP22X PMICs commit
supply: max17042_battery: Add support for the STATUS property commit, VOLT_MIN property commit, CHARGE_NOW property commit, SCOPE property commit, CHARGE_FULL_DESIGN property commit, TECHNOLOGY attribute commit
12.14. Pin Controllers (pinctrl)
armada-37xx: Add gpio support commit
sh-pfc: r8a7795: Add support for R-Car H3 ES2.0 commit
armada-37xx: Add pin controller support for Armada 37xx commit
rockchip: Add rk3328 pinctrl support commit
Add pincontrol driver for ARTPEC-6 SoC commit
stm32: Add STM32F469 MCU support commit
samsung: Add support for pad retention control for Exynos5433 SoCs commit
sunxi: Add A64 R_PIO controller support commit
12.15. Multi Media Card (MMC)
sdhci-xenon: Add Marvell Xenon SDHC core functionality commit
cavium: Add MMC support for Octeon SOCs commit
bcm2835: Add new driver for the sdhost controller commit
cavium: Add MMC PCI driver for ThunderX SOCs commit
cavium: Add core MMC driver for Cavium SOCs commit
sdhci-xenon: Add support to PHYs of Marvell Xenon SDHC commit
tegra: Add Tegra186 support commit
sdhci-cadence: add HS400 enhanced strobe support commit
sdhci: Add CQE support commit
12.16. Memory Technology Devices (MTD)
spi-nor: Add support for N25Q256A11 commit
nand: hynix: Add read-retry support for 1x nm MLC NANDs commit
spi-nor: Add support for ESMT F25L32QA and F25L64QA commit
spi-nor: add driver for STM32 quad spi flash controller commit
ubi: Add debugfs file for tracking PEB state commit
12.17. Industrial I/O (iio)
Aspeed ADC commit
accel: Add driver for the Analog Devices ADXL345 3-axis accelerometer commit
accel: adxl345: Add SPI support commit
adc: Add Maxim max9611 ADC driver commit
adc: add a driver for Qualcomm PM8xxx HK/XOADC commit
adc: add max1117/max1118/max1119 ADC driver commit
adc: add support for X-Powers AXP20X and AXP22X PMICs ADCs commit
adc: cpcap: Add minimal support for CPCAP PMIC ADC commit
adc: meson-saradc: add calibration commit
adc: mxs-lradc: Add support for ADC driver commit
adc: sun4i-gpadc-iio: add support for A33 thermal sensor commit
cros_ec_light_prox: add ChromeOS EC Light and Proximity Sensors commit
dac: Add support for ltc2632 DACs commit
dac: add support for stm32 DAC commit
distance: add devantech us ranger srf04 commit
health: add MAX30102 oximeter driver support commit
hid: Add humidity sensor support commit
hid: Add temperature sensor support commit
imu: st_lsm6dsx: add support to lsm6ds3h commit
imu: st_lsm6dsx: add support to lsm6dsl commit
imu: st_lsm6dsx: add support to multiple devices with the same settings commit
stm32 trigger: Add quadrature encoder device commit
adc: Driver for Linear Technology LTC2497 ADC commit
imu:mpu6050 add explicit mpu9250 support commit
light: Add support for STMicro VL6180 sensor commit
temperature:tmp007: Add irq and threshold events support commit
iio:adc:spear Move out of staging commit
12.18. Multi Function Devices (MFD)
Add TI LMU driver commit
mxs-lradc: Add support for mxs-lradc commit
lpc_ich: Add PCI ID for Intel Cougar Mountain SoC commit
lpc_ich: Add support for Intel Gemini Lake SoC commit
axp20x: Support AXP803 variant commit
Add support for DA9061 commit
12.19. Pulse-Width Modulation (PWM)
12.20. Inter-Integrated Circuit (I2C)
i2c: mux: ltc4306: LTC4306 and LTC4305 I2C multiplexer/switch commit
12.21. Hardware monitoring (hwmon)
12.22. General Purpose I/O (gpio)
dwapb: Add support for next generation of X-Gene SoC commit
mvebu: Add limited PWM support commit
add generic single-register fixed-direction GPIO driver commit
moxart: Switch to using the FTGPIO010 driver commit
f7188x: Add F71889A GPIO support commit
Add ROHM BD9571MWV-M PMIC GPIO driver commit
mmio: add support for NI 169445 NAND GPIO commit
12.23. Leds
leds/trigger/cpu: Add LED trigger for all CPUs aggregated commit
cpcap: new driver commit
Add LED support for MT6323 PMIC commit
12.24. DMA engines
dmaengine: cppi41: Add support of DA8xx to CPPI 4.1 commit
12.25. Cryptography hardware acceleration
ccp - Add SHA-2 384- and 512-bit support commit
ccp - Enable support for AES GCM on v5 CCPs commit
ccp - Enable 3DES function on v5 CCPs commit
caam/qi - add ablkcipher and authenc algorithms commit
stm32 - Support for STM32 CRC32 crypto module commit
caam - add Queue Interface (QI) backend support commit
exynos - Add new Exynos RNG driver commit
12.26. PCI
MicroSemi Switchtec management interface driver commit, commit, commit, commit
Add sysfs sriov_drivers_autoprobe to control VF driver binding commit
dwc: designware: Add EP mode support commit
dwc: dra7xx: Add EP mode support commit
Recognize Thunderbolt devices commit
Add device IDs for DRA74x and DRA72x commit
endpoint: Add EP core layer to enable EP controller and EP functions commit
endpoint: Create configfs entry for EPC device and EPF driver commit
endpoint: Introduce configfs entry for configuring EP functions commit
endpoint: functions: Add an EP function to test PCI commit
faraday: Add Faraday Technology FTPCI100 PCI Host Bridge driver commit
imx6: Add code to support i.MX7D commit
rockchip: Advertise 128-byte Read Completion Boundary support commit
tools: PCI: Add sample test script to invoke pcitest commit
tools: PCI: Add a userspace tool to test PCI endpoint commit
12.27. Clock
renesas: rcar-gen3-cpg: Add support for RCLK on R-Car H3 ES2.0 commit
renesas: r8a7795: Add support for R-Car H3 ES2.0 commit
meson-gxbb: Add MALI clocks commit
add clk_possible_parents debugfs file commit
sunxi-ng: add Allwinner H5 CCU support for H3 CCU driver commit
meson-gxbb: Add GXL/GXM GP0 Variant commit
mediatek: add clk support for MT6797 commit
vc5: Add support for IDT VersaClock 5P49V5935 commit
sunxi-ng: add support for PRCM CCUs commit
12.28. Various
auxdisplay: Add HD44780 Character LCD support commit
auxdisplay: charlcd: Add support for displays with more than two lines commit
auxdisplay: charlcd: Add support for 4-bit interfaces commit
hwrng: mtk - Add driver for hardware random generator on MT7623 SoC commit
EDAC, thunderx: Add Cavium ThunderX EDAC driver commit
extcon: intel-cht-wc: Add Intel Cherry Trail Whiskey Cove PMIC extcon driver commit
fpga: zynq: Add support for encrypted bitstreams commit
fpga: Add support for Lattice iCE40 FPGAs commit
FPGA: Add TS-7300 FPGA manager commit
fpga pr ip: Core driver support for Altera Partial Reconfiguration IP commit
fpga manager: Add Xilinx slave serial SPI driver commit
fpga: Add support for Xilinx LogiCORE PR Decoupler commit
fpga pr ip: Platform driver for Altera Partial Reconfiguration IP commit
irqchip: Add Mediatek mtk-cirq driver commit
irqchip: mips-cpu: Introduce IPI IRQ domain support commit
mailbox: Add driver for Broadcom FlexRM ring manager commit
mailbox: bcm-pdc: Add Northstar Plus support to PDC driver commit
mei: implement fsync commit
mei: drop amthif internal client commit
drivers/misc: Add Aspeed LPC control driver commit
cxl: Add psl9 specific code commit
cxl: Enable PCI device IDs for future IBM CXL adapters commit
misc: Add host side PCI driver for PCI test function device commit
nfc: Add support RC-S380P to port100 commit
NFC: remove TI nfcwilink driver commit
phy: rockchip-usb: Add vbus regulator support commit
phy: phy-mt65xx-usb3: add support for new version phy commit
phy: qcom-qmp: new qmp phy driver for qcom-chipsets commit
phy: qcom-qusb2: New driver for QUSB2 PHY on Qcom chips commit
soc: qcom: smd: Remove standalone driver commit
soc: ti: Add ti_sci_pm_domains driver commit
soc: imx: Add GPCv2 power gating driver commit
soc: renesas: rcar-sysc: Add support for R-Car H3 ES2.0 commit
soc/tegra: Implement Tegra186 PMC support commit
w1: add support for DS2438 Smart Battery Monitor commit
firmware: Google VPD sysfs driver commit
firmware: google memconsole: Add ARM/ARM64 support commit
firmware: google memconsole: Add coreboot support commit
Android: goldfish_pipe: An implementation of more parallel pipe commit
perf: qcom: Add L3 cache PMU driver commit
13. List of merges
14. Other news sites
Heise.de Die Neuerungen von Linux 4.12