Speck-Entfernung sowie neue & verbesserte Treiber

Linux-Kernel 4.20

Trends & News | Kernel-Log

Seite 3: Speck-Entfernung sowie neue & verbesserte Treiber

Linux 4.20 unterstützt die für den chinesischen Markt produzierte Prozessorserie "Dhyana". Deren Hersteller Hygon hat diese CPUs nicht von Grund auf neu entwickelt, sondern AMDs Zen-Technik lizenziert. Die unter anderem in chinesischen Supercomputern verwendenden x86-64-Prozessoren sind daher enge Verwandte des AMD Epyc.

Ebenfalls neu ist der Support für die zwei ABI-Varianten der 32-Bit-Prozessor-Architektur C-Sky. Diese ist von einem alten Motorola-Kern abgeleitet und steckt etwa im SoC des 5-Euro-Bastlerboard C-Sky GX6605S. Das hat zwar einen HDMI-Anschluss, allerdings nur 64 MByte DDR2-RAM und 4 MByte Flash-Speicher – letztlich eignet es sich nicht für klassische Desktop-PCs, sondern konkurriert eher mit Hardware der Arduino-Klasse.

Das Unternehmen C-Sky macht auch bei der quelloffenen Architektur RISC-V mit. Der Support für diese ISA (Instruction Set Architecture) wurde bei 4.20 weiter verbessert (u. a. 1, 2). Daher beherrscht ein für diese ISA übersetztes Linux jetzt auch den Fast Userspace Mutex (Futex), der die Performance von Anwendungen verbessern kann.

Unter den Änderungen an KVM war eine, durch die es bei der Virtualisierung mit vielen Intel-Prozessoren nun standardmäßig gelingt, innerhalb einer Virtual Machine (VM) eine weitere zu starten. Durch diese "Nested Virtualization" kann man mit einem Linux-Host und KVM beispielsweise eine Windows-10-VM betreiben, in der sich mit Hyper-V arbeitende Container oder VMs ganz normal verwenden lassen. Eine so letztlich im Level 2 (L2) laufende VM ist allerdings langsamer als eine normale, im Level 1 (L1) laufende VM. Die Funktion ist aber für Cloud-Anbieter interessant, die ihren Kunden typischerweise VMs stellen, in denen man bislang meist nicht virtualisieren kann. Nested Virtualization mit Intels Virtualisierungstechnik VMX ist auch in älteren Linux-Versionen enthalten, dort aber noch nicht so ausgereift. Man muss sie daher explizit aktivieren, indem man beim Laden von kvm_intel den Parameter nested=1 setzt.

Mit dem neuen Userspace DMA Buffer (udmabuf) Driver sollen sich Bedienoberflächen von VMs effizienter auf dem Wirt darstellen lassen. Außerdem kann die Technik die Weiterverarbeitung durch Remote-Desktop-Lösungen wie Spice erleichtern. Beides gelingt mithilfe der DMA-Buffer-Sharing-Technik DMA_Buf, die das bei KVM-Virtualierung genutzte Qemu durch Udmabuf nun einbinden kann. Dadurch kann unter anderem der Grafikkern des Hosts die Bilddaten eines Gasts direkt verwenden, was das zeitraubende Kopieren der Speicherinhalte effizienter macht und im Idealfall sogar komplett vermeidet.

Der Linux-Kernel bringt jetzt einen Netzwerktreiber für den Intel I225-LM/I225-V 2.5GBASE-T Ethernet Controller mit. Diese Netzwerkchips, die Daten mit 2.5 GBit/s über die verbreiteten Cat5E/Cat6-Netzwerkkabel übertragen, will Intel offenbar in den nächsten Monaten einführen.

Neu dabei ist auch Support für das Apple Magic Trackpad 2 und die Vibrationsfunktion des Xbox One S Controller. Außerdem unterstützt Linux jetzt die Soundkarten Creative Sound BlasterX AE-5 und ZxR. Zum Kernel stieß ferner der Cedrus VPU Decoder Driver, der für Support die MPEG2-Decoder der Video-Engine einiger Allwinner-Prozessoren sorgt, die sich auf einer Reihe von Bastelboards finden; Support für die H.264- und H.265-Decoder der Video-Engine ist bereits in Vorbereitung.

Über den neuen "LED pattern driver" kann der Kernel die vom ihm betreuten LEDs in konfigurierbaren Zyklen heller oder dunkler stellen; das lässt sich via Sysfs flexibel festlegen, sodass man für LED-Anzeigen oder Warnleuchten keine weitere Software benötigt. Einige weitere Änderungen an Treibern nennen die Merges von Subsystemen wie HID (Human Interface Devices), Hwmon, Media (1, 2), Platform, Sound und USB.

Der Amgpu-Treiber unterstützt jetzt auch die GPUs, die AMD in neuen Prozessoren einsetzen will, die bislang nur unter den Codenamen "Raven 2" und "Picasso" bekannt sind. Außerdem wurde der Support für die Vega20-GPU verbessert, die offenbar bald auch auf Gamer-Grafikkarten zum Einsatz kommen sollen. Die Entwickler haben zudem einige Probleme beim Support für die Radeon RX 590 beseitigt. Ferner ging AMDs GPU-Computing-Treiber Amfkfd in Amdgpu auf.

Der für GeForce-Karten zuständige Treiber Nouveau bietet jetzt rudimentäre Unterstützung von HDMI 2.0, das unter anderem zur besseren Ansteuerung besonders hochauflösender Bildschirme nötig ist. Weitere Änderungen rund um Grafiktreiber nennen die wichtigsten Merges der Subsysteme DRM und Fbdev.

Linux 4.20 kann die Prozessortemperatur bei einer Reihe neuerer AMD-Prozessoren auslesen. Erstmals dabei ist auch Support für Hardware-Monitoring-Chips wie NCT6797D und NCT6798D, die auf einer Reihe neuerer Mainboards sitzen. Linux 4.20 unterstützt nun auch das Raspberry Pi Compute Module 3, das die modifizierten Kernel der Raspberry-Pi-Foundation schon länger anzusprechen wissen. Der neue Kernel bringt zudem Support für über ein Dutzend verschiedene Einplatinencomputer mit ARM- oder ARM64-Kern. Details hierzu finden sich im Merge von armsoc-dt. Änderungen rund um andere Architektur-nahe Bereiche des Kernels nennen die Kommentare zu Merges in den Subsystemen ARM64, ARM SoC Driver, ARM SoC Plaform, Devicetree und Powerpc.

Die Entwickler haben zudem weitere Umbauten vorgenommen, um das Jahr-2038-Problem von 32-Bit-Linux auszumerzen (u. a. 1). Um die Sicherheit zu verbessern, haben sie zudem Code an verschiedenen Stellen des Kernels verändert, damit er keine Variable Length Arrays (VLAs) mehr nutzt. Dabei handelt es sich um einen in C definierten Datentyp, dessen Größe erst zur Laufzeit festgelegt wird; Details zu den Beweggründen liefert der LWN.net im Artikel "C considered dangerous". Bei LWN.net findet sich auch ein Artikel zur neuen Datenstruktur "Xarray": Sie soll die Performance verbessern und einige Probleme rund um die beim Kernel genutzte Datenstruktur "radix tree" ausräumen. Weitere Neuerungen rund um die Infrastruktur des Kernels nennen die Merges zu Gebieten wie ACPI, Core RCU, Compiler Attributes, Documentation, Locking Core, Perf, Power Management (1, 2), Scheduler, Siginfo, Timers Core, Tracing, x86-mm, x86-paravirt. Bei den hier und in anderen Bereichen des Textes genannten Merges handelt es sich übrigens um welche, die der Autor für verlinkenswert hielt, weil sie für so manchen Leser relevante Informationen enthalten; weit über hundert andere Merges haben diese Hürde nicht geschafft.

Kommentare

Kommentare lesen (71 Beiträge)

Anzeige