{"id":102933,"date":"2022-01-10T15:36:38","date_gmt":"2022-01-10T13:36:38","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/%d1%80%d0%b5%d0%bb%d0%b8%d0%b7-%d1%8f%d0%b4%d1%80%d0%b0-linux-5-16"},"modified":"2022-01-10T15:36:38","modified_gmt":"2022-01-10T13:36:38","slug":"reliz-yadra-linux-5-16","status":"publish","type":"post","link":"https:\/\/prohoster.info\/de\/blog\/news\/reliz-yadra-linux-5-16","title":{"rendered":"Release des Linux-Kernels 5.16","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Nach zwei Monaten Entwicklung stellte Linus Torvalds die Ver\u00f6ffentlichung des Linux-Kernels 5.16 vor. Zu den bemerkenswertesten \u00c4nderungen geh\u00f6ren: der Systemaufruf futex_waitv zur Leistungssteigerung von Windows-Spielen unter Wine, die Fehlerverfolgung im Dateisystem \u00fcber fanotify, das Konzept von Folios im Speichermanagement, die Unterst\u00fctzung von Prozessoranweisungen AMX, die M\u00f6glichkeit der Reservierung von Speicher f\u00fcr Netzwerksockets, die Unterst\u00fctzung von netfilter zur Klassifizierung von Paketen im \u201aEgress\u2018-Stadium, die Aktivierung des DAMON-Subsystems zur proaktiven Auslagerung nicht ben\u00f6tigter Speicherbereiche, Verbesserungen beim Umgang mit \u00dcberlastungen bei hohem Schreibaufkommen und die Unterst\u00fctzung von mehrlaufenden Festplatten.    <\/p>\n<p>Die neue Version enth\u00e4lt 15.415 Korrekturen von 2.105 Entwicklern, die Patchgr\u00f6\u00dfe betr\u00e4gt 45 MB (die \u00c4nderungen betreffen 12.023 Dateien, 685.198 Codezeilen wurden hinzugef\u00fcgt, 263.867 Zeilen wurden gel\u00f6scht). Etwa 44% aller in 5.16 enthaltenen \u00c4nderungen betreffen Ger\u00e4tetreiber, etwa 16% der \u00c4nderungen sind auf die Aktualisierung architekturspezifischer Codes zur\u00fcckzuf\u00fchren, 16% betreffen das Netzwerk-Framework, 4% die Dateisysteme und 4% die internen Subsysteme des Kernels.    <\/p>\n<p>  Die wichtigsten Neuerungen im Kernel 5.16:  <\/p>\n<ul>\n<li class=\"l\"> <b>Festplattensubsystem, Ein-\/Ausgabe und Dateisysteme<\/b>\n<ul>\n<li class=\"l\"> In das fanotify-System wurden Mittel zur \u00dcberwachung des Zustands des Dateisystems und zur Verfolgung von Fehlern integriert. Fehlerinformationen werden \u00fcber einen neuen Ereignistyp - FAN_FS_ERROR - \u00fcbermittelt, der in Benutzeranwendungssystemen zur \u00dcberwachung abgefangen werden kann, um den Administrator sofort zu informieren oder Wiederherstellungsprozesse zu starten. Bei einer kaskadierenden Auftreten von Fehlern sorgt fanotify daf\u00fcr, dass die Meldung \u00fcber den ersten Fehler zusammen mit einem Gesamtschalter f\u00fcr die Probleme geliefert wird, um das nachfolgende Verst\u00e4ndnis der Ausfallursachen zu erleichtern. Die Unterst\u00fctzung zur Fehlerverfolgung ist derzeit nur f\u00fcr das Dateisystem Ext4 umgesetzt.\n<li class=\"l\"> Die Verarbeitung von \u00dcberlastungen bei Schreiboperationen (write congestion) wurde verbessert, die auftreten, wenn das Volumen der Schreiboperationen die Speicherkapazit\u00e4t \u00fcbersteigt und das System gezwungen ist, die Schreibanforderungen des Prozesses bis zum Abschluss der bereits \u00fcbermittelten Anfragen zu blockieren. In der neuen Version wurde der Kernmechanismus, der zur Erfassung von \u00dcberlastungen und zur Blockierung von Aufgaben verwendet wird, vollst\u00e4ndig \u00fcberarbeitet, da bei der alten Implementierung Probleme mit der Synchronisation der Verarbeitung von Schreib\u00fcberlastungen und dem Auslagern von Speicherseiten auf den Swap-Speicher bei unzureichendem Speicher im System auftraten.\n<li class=\"l\"> Btrfs unterst\u00fctzt die Zonierungstechnologie (Zoned Namespace), die in Festplatten oder NVMe-SSDs verwendet wird, um den Speicherraum in Zonen zu unterteilen, die aus Gruppen von Bl\u00f6cken oder Sektoren bestehen, in die Daten nur sequenziell hinzugef\u00fcgt werden d\u00fcrfen, wobei die gesamte Gruppe von Bl\u00f6cken aktualisiert wird. Zudem wurden kleine Optimierungen des Inode-Loggings vorgenommen, wodurch die Durchsatzrate im dbench-Test um 3% gesteigert und die Latenz um 11% reduziert werden konnte. Der Mechanismus zur Protokollierung von Verzeichnissen wurde \u00fcberarbeitet, wobei die Anzahl der Suchoperationen und Sperren im Baum zur Effizienzsteigerung reduziert wurde. Die Einf\u00fcgung von Elementen in die btree-Struktur wurde im Batch-Modus beschleunigt (die Zeit f\u00fcr die Masseninsertionsoperationen wurde um 4% verk\u00fcrzt, die f\u00fcr L\u00f6schungen um 12%). Es wurde eine eingeschr\u00e4nkte Unterst\u00fctzung f\u00fcr die Verwendung von Kompression beim Schreiben von unvollst\u00e4ndigen Seiten hinzugef\u00fcgt sowie die M\u00f6glichkeit zur Defragmentierung von Unterseiten (subpage). Es wurden Vorbereitungen f\u00fcr die Unterst\u00fctzung der zweiten Version des Protokolls f\u00fcr den Befehl &#171;send&#187; getroffen.\n<li class=\"l\"> Im Dateisystem XFS wurde der Speicherverbrauch durch die Verwendung separater Slab-Caches f\u00fcr h\u00e4ufig verwendete Elemente und die Reduzierung bestimmter Datenstrukturen gesenkt.\n<li class=\"l\"> Im Dateisystem Ext4 wurden lediglich Fehlerbehebungen und eine genauere Berechnung der Parameter f\u00fcr die verz\u00f6gerte Initialisierung der Inode-Tabelle festgestellt.\n<li class=\"l\"> Auf der Ebene der Blockger\u00e4te wurden Optimierungen implementiert, die eine erhebliche Effizienzsteigerung bei der Zuweisung von Operationen zu CPU-Kernen erm\u00f6glichen.\n<li class=\"l\"> Erste Unterst\u00fctzung f\u00fcr Festplatten mit mehreren unabh\u00e4ngigen Antrieben (multi-actuator) wurde hinzugef\u00fcgt, die es erm\u00f6glichen, gleichzeitig auf mehrere Sektoren in verschiedenen Zonen der magnetischen Platte zuzugreifen.\n<li class=\"l\"> Ein neuer ioctl-Befehl CDROM_TIMED_MEDIA_CHANGE wurde hinzugef\u00fcgt, um Ereignisse zum Wechsel von Medien in CD-Laufwerken zu erkennen.\n<li class=\"l\"> Im EROFS-Dateisystem (Enhanced Read-Only File System) wurde die M\u00f6glichkeit hinzugef\u00fcgt, \u00fcber mehrere Speicherger\u00e4te hinweg zu arbeiten. Verschiedene Ger\u00e4te k\u00f6nnen in einem 32-Bit-Adressraum von Bl\u00f6cken zusammengefasst werden. Zudem wurde die Unterst\u00fctzung f\u00fcr die Kompression mittels LZMA-Algorithmus hinzugef\u00fcgt.\n<li class=\"l\"> Im F2FS-Dateisystem wurden Montageoptionen hinzugef\u00fcgt, um die Fragmentierung von Dateien bei der Ablage im Speicher zu steuern (zum Beispiel zur Fehlersuche bei der Optimierung der Arbeit mit fragmentierten Speichern).\n<li class=\"l\"> In CEPH sind standardm\u00e4\u00dfig die Operationen zum Erstellen und L\u00f6schen von Verzeichnissen im asynchronen Modus aktiviert (um das alte Verhalten wiederherzustellen, sollte beim Mounten die Option &#8216;-o wsync&#8217; verwendet werden). Es wurden Metriken hinzugef\u00fcgt, die die Operationen zum Kopieren externer Objekte verfolgen.\n<li class=\"l\"> Im CIFS wurde die Montageoption tcpnodelay hinzugef\u00fcgt, bei der f\u00fcr das Netzwerk-Socket der Modus tcp_sock_set_nodelay gesetzt wird, der das Warten auf die Auff\u00fcllung der Warteschlange im TCP-Stack deaktiviert. Zudem wurde die Unterst\u00fctzung f\u00fcr verschachtelte DFS-Links (Distributed File System) beim Remounting hinzugef\u00fcgt.\n<li class=\"l\"> Die Unterst\u00fctzung f\u00fcr die Beendigung von Anfragen an Blockger\u00e4te im Batch-Modus wurde hinzugef\u00fcgt. Tests der \u00c4nderung zeigten eine Steigerung der Intensit\u00e4t der Ausf\u00fchrung von zuf\u00e4lligen Leseoperationen von Optane-Speichern von 6,1 auf 6,6 Millionen IOPS auf einem CPU-Kern.                            <\/ul>\n<li class=\"l\"> <b>Speicher und Systemdienste<\/b>\n<ul>\n<li class=\"l\"> Ein neuer Systemaufruf futex_waitv wurde hinzugef\u00fcgt, der es erm\u00f6glicht, den Status mehrerer Futexe mit einem einzigen Systemaufruf zu \u00fcberwachen. Diese Funktion \u00e4hnelt der in Windows verf\u00fcgbaren Funktionalit\u00e4t WaitForMultipleObjects, deren Emulation \u00fcber futex_waitv n\u00fctzlich sein k\u00f6nnte, um die Leistung von Windows-Spielen zu steigern, die unter Wine oder Proton ausgef\u00fchrt werden. Dar\u00fcber hinaus kann das gleichzeitige Warten auf Futexe auch zur Optimierung der Leistung nativer Linux-Spielversionen verwendet werden.\n<li class=\"l\"> Die Konzept der Seitenfolianten (page folios) wurde umgesetzt, deren Verwendung in bestimmten Teilsystemen des Kerns die Speicherverwaltung bei typischen Lasten beschleunigen wird. Derzeit wurde das Hauptteilsystem zur Speicherverwaltung im Kern bereits auf Folianten umgestellt, ebenso wie die Implementierung des Seitencaches, und in Zukunft ist die Umstellung der Dateisysteme geplant. Zuk\u00fcnftig ist auch die Unterst\u00fctzung f\u00fcr mehrseitige Folianten im Kern vorgesehen.\n<p> Folianten \u00e4hneln zusammengesetzten Seiten (compound pages), unterscheiden sich jedoch durch eine verbesserte Semantik und eine klarere Arbeitsorganisation. F\u00fcr die Verwaltung des Systemspeichers wird der verf\u00fcgbare RAM in Seiten unterteilt, deren Gr\u00f6\u00dfe von der Architektur abh\u00e4ngt, jedoch in x86-Systemen in Kilobyte gemessen wird (gew\u00f6hnlich 4096 Byte). Moderne Systeme sind mit Dutzenden von Gigabyte RAM ausgestattet, was die Verwaltung des Speichers erschwert, da eine enorme Anzahl von Seiten bearbeitet werden muss. Um die Anzahl der Seiten zu reduzieren, wurde im Kern fr\u00fcher das Konzept der zusammengesetzten Seiten (compound pages) mit Strukturen, die mehr als eine physische Seite umfassen, umgesetzt. Doch die API zur Manipulation von zusammengesetzten Seiten hinterlie\u00df zu w\u00fcnschen \u00fcbrig und f\u00fchrte zu zus\u00e4tzlichen Overheadkosten.    <\/p>\n<li class=\"l\"> Dem Task-Scheduler wurde ein Handler hinzugef\u00fcgt, der die Clusterung des Caches in der CPU ber\u00fccksichtigt. In bestimmten Prozessoren, wie dem Kunpeng 920 (ARM) und Intel Jacobsville (x86), kann eine bestimmte Anzahl von CPU-Kernen, in der Regel 4, den L3- oder L2-Cache gemeinsam nutzen. Die Ber\u00fccksichtigung solcher Topologien kann die Effizienz der Aufgabenverteilung \u00fcber die CPU-Kerne im Task-Scheduler erheblich steigern, da das Verschieben von Aufgaben innerhalb eines CPU-Clusters die Speicherzugriffsbandbreite erh\u00f6ht und den Wettbewerb im Cache verringert.\n<li class=\"l\"> Die Unterst\u00fctzung f\u00fcr AMX (Advanced Matrix Extensions), die in den kommenden Serverprozessoren Intel Xeon Scalable unter dem Codenamen Sapphire Rapids implementiert werden, wurde hinzugef\u00fcgt. AMX bietet anpassbare Register TMM &#171;TILE&#187; und Instruktionen zur Manipulation von Daten in diesen Registern, wie TMUL (Tile matrix MULtiply) zur Matrixmultiplikation.\n<li class=\"l\"> Es wurden mehrere neue Funktionen implementiert, die auf dem im letzten Release hinzugef\u00fcgten DAMON (Data Access MONitor)-Subsystem basieren. Dieses erm\u00f6glicht die \u00dcberwachung des Zugriffs auf Daten im Arbeitsspeicher in Bezug auf den ausgew\u00e4hlten Prozess, der im Benutzerspeicherraum l\u00e4uft. Beispielsweise erlaubt das Subsystem die Analyse, auf welche spezifischen Speicherbereiche der Prozess w\u00e4hrend seiner gesamten Laufzeit zugegriffen hat und welche Bereiche ungenutzt blieben.\n<ul>\n<li class=\"l\"> DAMON_RECLAIM zur Identifizierung und Verdr\u00e4ngung von Speicherbereichen, auf die nicht zugegriffen wurde. Der Mechanismus kann verwendet werden, um proaktiv Seiten im Arbeitsspeicher zu verdr\u00e4ngen, wenn sich ein Mangel an freiem Speicher n\u00e4herungsweise anbahnt.\n<li class=\"l\"> DAMOS (Data Access Monitoring-based Operation Schemes) zur Anwendung der festgelegten Funktion `madvise()`, wie z.B. zur Freigabe zus\u00e4tzlicher freier Speicherbereiche, auf bestimmte Speicherbereiche eines Prozesses, f\u00fcr die eine gewisse Zugriffsfrequenz auf den Speicher erfasst wird. Die Konfiguration der DAMOS-Parameter erfolgt \u00fcber `debugfs`.\n<li class=\"l\"> Die M\u00f6glichkeit, den physischen Adressraum des Speichers zu \u00fcberwachen (fr\u00fcher konnten nur virtuelle Adressen verfolgt werden).  <\/ul>\n<li class=\"l\"> Die Implementierung des Zstd-Kompressionsalgorithmus wurde auf Version 1.4.10 aktualisiert, was die Leistung verschiedener Subsysteme des Kernels, in denen die Kompression angewendet wird, erheblich verbessert hat (z. B. wurde die Entpackung des Kernel-Images um 35 % beschleunigt, die Entpackungsleistung komprimierter Daten in Btrfs und SquashFS erh\u00f6hte sich um 15 %, und in ZRAM um 30 %). Urspr\u00fcnglich wurde im Kernel eine separate Implementierung von zstd verwendet, die auf Version 1.3.1 basierte, die vor \u00fcber drei Jahren ver\u00f6ffentlicht wurde und viele wichtige Optimierungen nicht enthielt. Neben dem Wechsel auf die aktuelle Version vereinfacht der hinzugef\u00fcgte Patch auch die Synchronisierung mit dem Upstream-Zweig von zstd, wodurch der Code zur direkten Einbindung in den Kernel aus dem Hauptrepository von zstd generiert werden kann. In Zukunft plant man, den zstd-Code im Kernel mit Erscheinen neuer Versionen der zstd-Bibliothek zu aktualisieren.\n<li class=\"l\"> Es wurden umfangreiche Verbesserungen im eBPF-Subsystem vorgenommen. Es wurde die M\u00f6glichkeit hinzugef\u00fcgt, Funktionen von Kernelmodulen aus BPF-Programmen aufzurufen. Die Funktion bpf_trace_vprintk() wurde implementiert, die im Gegensatz zu bpf_trace_printk() die Ausgabe von mehr als drei Argumenten auf einmal erm\u00f6glicht. Eine neue Datenspeicherstruktur (BPF map) namens Bloom-Filter wurde hinzugef\u00fcgt, die die Verwendung einer gleichnamigen probabilistischen Datenstruktur zur Feststellung der Existenz eines Elements in einer Menge erm\u00f6glicht. Ein neuer Attribut BTF_KIND_TAG wurde hinzugef\u00fcgt, der in BPF-Programmen zur Bindung von Tags an Funktionsparameter verwendet werden kann, um beispielsweise das Auffinden von Fehlern in Benutzerprogrammen zu erleichtern. In libbpf wurde die Erstellung eigener Abschnitte .rodata.* \/ .data.* erlaubt, die Unterst\u00fctzung f\u00fcr Tracing-Events durch uprobe und kprobe wurde implementiert, sowie ein API zum Kopieren aller BTF-Typen von einem Objekt zu einem anderen hinzugef\u00fcgt. Die Unterst\u00fctzung von AF_XDP wurde aus libbpf in die separate Bibliothek libxdp ausgelagert. F\u00fcr die MIPS-Architektur wurde ein JIT-Compiler f\u00fcr die BPF-VM implementiert.\n<li class=\"l\"> F\u00fcr die ARM64-Architektur wurde die Unterst\u00fctzung f\u00fcr die ARMv8.6-Erweiterungen f\u00fcr Timer implementiert, die insbesondere die Selbstsynchronisierung der Darstellung von Systemregistern ohne Verwendung von ISB-Anweisungen erm\u00f6glichen.\n<li class=\"l\"> F\u00fcr die PA-RISC-Architektur wurde die M\u00f6glichkeit implementiert, den KFENCE-Mechanismus zur Erkennung von Speicherfehlern zu nutzen, und es wurde Unterst\u00fctzung f\u00fcr den KCSAN-Racing-Zustandsdetektor hinzugef\u00fcgt.\n<li class=\"l\"> Es wurde die M\u00f6glichkeit geschaffen, die Zugriffsrechte auf tracefs auf Ebene einzelner Benutzer und Gruppen zu konfigurieren. Beispielsweise kann nun der Zugriff auf Tracing-Tools nur f\u00fcr Mitglieder einer bestimmten Gruppe erlaubt werden.                        <\/ul>\n<li class=\"l\"> <b>Virtualisierung und Sicherheit<\/b>\n<ul>\n<li class=\"l\"> In den Subsystemen io_uring und device-mapper wurde die Unterst\u00fctzung f\u00fcr die Generierung von Auditevents implementiert. In io_uring wurde die M\u00f6glichkeit zur Zugriffskontrolle \u00fcber LSM-Module hinzugef\u00fcgt. Au\u00dferdem wurde die M\u00f6glichkeit zur Auditierung des Systemaufrufs openat2() bereitgestellt.\n<li class=\"l\"> Der Kernel-Code ist vollst\u00e4ndig von nicht unterbrochenen casE-Ausdr\u00fccken in switch-Befehlen befreit (ohne return oder break nach jedem case-Block). Beim Kompilieren des Kernels kann jetzt der Modus \u201e-Wimplicit-fallthrough\u201c angewendet werden.\n<li class=\"l\"> \u00c4nderungen zur Versch\u00e4rfung von Grenzkontrollen bei der Ausf\u00fchrung der Funktion memcpy() wurden eingef\u00fchrt.\n<li class=\"l\"> Im Interface f\u00fcr asynchrone Ein- \/ Ausgabeverarbeitung io_uring wurde die M\u00f6glichkeit implementiert, Sicherheitsrichtlinien, die von den Modulen SELinux und Smack definiert werden, auf Ein- \/ Ausgabeverfahren anzuwenden.\n<li class=\"l\"> Im IMA (Integrity Measurement Architecture)-Subsystem, das es externen Diensten erm\u00f6glicht, den Zustand der Kernsubsysteme zu \u00fcberpr\u00fcfen, um deren Authentizit\u00e4t sicherzustellen, wurde die M\u00f6glichkeit implementiert, Regeln basierend auf der Gruppen-ID (GID), zu der die Datei geh\u00f6rt oder in die der Benutzer, der auf die Datei zugreift, geh\u00f6rt, anzuwenden.\n<li class=\"l\"> Einige erweiterte Schutzmechanismen f\u00fcr Streams seccomp(), die als \u00fcberfl\u00fcssig erachtet wurden und die Sicherheit nicht signifikant erh\u00f6hen, sondern sich negativ auf die Leistung auswirken, sind standardm\u00e4\u00dfig deaktiviert. Der Einsatz des Retpoline-Schutzes wurde \u00fcberarbeitet.\n<li class=\"l\"> Die Implementierung des cryptoloop-Mechanismus wurde entfernt, der 2004 durch dm-crypt ersetzt wurde und bei Bedarf dieselben Algorithmen unterst\u00fctzt.\n<li class=\"l\"> Standardm\u00e4\u00dfig ist der unprivilegierte Zugriff auf das eBPF-Subsystem verboten. Diese \u00c4nderung wurde vorgenommen, um die Verwendung von BPF-Programmen zur Umgehung von Schutzma\u00dfnahmen gegen Seitenkanalangriffe zu verhindern. Bei Bedarf kann der Administrator den unprivilegierten Benutzern den Zugriff auf eBPF wieder erm\u00f6glichen.\n<li class=\"l\"> Im Hypervisor ACRN, der f\u00fcr die Ausf\u00fchrung von Echtzeitanwendungen und f\u00fcr den Einsatz in kritischen Systemen konzipiert ist, wurde die Unterst\u00fctzung f\u00fcr das Erstellen\/L\u00f6schen von virtuellen Ger\u00e4ten und das Durchreichen von MMIO-Ger\u00e4ten hinzugef\u00fcgt.\n<li class=\"l\"> In die Krypto-Engine wurde die Unterst\u00fctzung f\u00fcr KPP-Definitionen (Key-agreement Protocol Primitives) hinzugef\u00fcgt, die die Logik der Treiberentwicklung f\u00fcr Kryptosysteme vereinfachen.\n<li class=\"l\"> F\u00fcr den Hypervisor Hyper-V wurde die Unterst\u00fctzung f\u00fcr den Isolationsmodus implementiert <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/vps\/\"   title=\"virtuelle Maschinen\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"2084\">virtuelle Maschinen<\/a>, der die Verschl\u00fcsselung des Speicherinhalts beinhaltet.\n<li class=\"l\"> Im Hypervisor <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/vps\/abuzoustojchivye-vps\/\"   title=\"KVM\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"4404\">KVM<\/a> wurde die Unterst\u00fctzung f\u00fcr die RISC-V-Architektur hinzugef\u00fcgt. Die M\u00f6glichkeit f\u00fcr die Migration virtueller Maschinen innerhalb einer Hostumgebung, die mit AMD SEV- und SEV-ES-Erweiterungen betrieben werden, wurde umgesetzt. Ein API f\u00fcr die Live-Migration von Gast-Systemen, die mit AMD SEV (Secure Encrypted Virtualization) verschl\u00fcsselt sind, wurde hinzugef\u00fcgt.\n<li class=\"l\"> F\u00fcr die PowerPC-Architektur ist standardm\u00e4\u00dfig der STRICT_KERNEL_RWX-Modus aktiviert, der die gleichzeitige Verwendung von speicherseiten f\u00fcr Schreib- und Ausf\u00fchrungszugriffe blockiert.\n<li class=\"l\"> Die Unterst\u00fctzung f\u00fcr Hotplugging von Speicher (Memory hotplug) wurde auf 32-Bit-x86-Systemen eingestellt, da sie \u00fcber ein Jahr lang nicht funktionierte.\n<li class=\"l\"> Die Bibliothek liblockdep wurde aus dem Kernel entfernt und wird nun separat vom Kernel gepflegt.                  <\/ul>\n<li class=\"l\"> <b>Netzwerksubsystem<\/b>\n<ul>\n<li class=\"l\"> F\u00fcr Sockets wurde die neue Option SO_RESERVE_MEM implementiert, mit der ein bestimmter Speicherbereich f\u00fcr den Socket reserviert werden kann, der immer f\u00fcr den Socket verf\u00fcgbar bleibt und nicht entnommen wird. Die Verwendung dieser Option erm\u00f6glicht eine Leistungssteigerung durch die Reduzierung von Speicherzuweisungs- und -freigabeoperationen im Netzwerk-Stack, insbesondere unter Bedingungen von Speichermangel im System.\n<li class=\"l\"> Die Unterst\u00fctzung f\u00fcr das Protokoll des automatischen Tunnelns von Multicast-Traffic (Automatic Multicast Tunneling, RFC 7450) wurde hinzugef\u00fcgt, das es erm\u00f6glicht, Multicast-Traffic aus Netzwerken mit Unterst\u00fctzung f\u00fcr Multicast an Empf\u00e4nger in Netzwerken ohne Multicast zu liefern. Das Protokoll funktioniert durch Kapselung in UDP-Pakete.\n<li class=\"l\"> Die Kapselung von IOAM-Daten (In-situ Operations, Administration, and Maintenance) in Transitpaketen wurde verbessert.\n<li class=\"l\"> Der ethtool netlink API wurde die M\u00f6glichkeit hinzugef\u00fcgt, die Energieverbrauchsmodi der Transceiver zu steuern.\n<li class=\"l\"> Im netfilter-Subsystem wurde die M\u00f6glichkeit zur Klassifizierung von Paketen auf der Egress-Ebene implementiert, d.h. in der Phase, in der der Treiber ein Paket vom Netzwerk-Stack des Kernels erh\u00e4lt. In nftables wurde die Unterst\u00fctzung entsprechender Filter in der Version 1.0.1 eingef\u00fchrt. Im netfilter wurde die M\u00f6glichkeit hinzugef\u00fcgt, interne Header und Daten f\u00fcr UDP und TCP (inner header \/ payload), die nach dem Transportheader (transport header) folgen, abzugleichen und zu \u00e4ndern.\n<li class=\"l\"> Neue sysctl-Parameter arp_evict_nocarrier und ndisc_evict_nocarrier wurden hinzugef\u00fcgt, bei deren Einstellung der ARP-Cache und die ndisc-Tabelle (Neighbor Discovery) im Falle eines Verbindungsabbruchs (NOCARRIER) gel\u00f6scht werden.\n<li class=\"l\"> Im Netzwerkmanagementmechanismus fq_codel (Controlled Delay) wurden die Modi Low Latency, Low Loss und Scalable Throughput (L4S) hinzugef\u00fcgt.                          <\/ul>\n<li class=\"l\"> <b>Ausr\u00fcstung<\/b>\n<ul>\n<li class=\"l\"> Im amdgpu-Treiber wurde eine erste Unterst\u00fctzung der DP 2.0-Spezifikation (DisplayPort 2.0) und die M\u00f6glichkeit des Tunnelns von DisplayPort \u00fcber USB4 implementiert. F\u00fcr die APU Cyan Skillfish (ausgestattet mit GPU Navi 1x) wurde die Unterst\u00fctzung f\u00fcr Display-Controller hinzugef\u00fcgt. Die Unterst\u00fctzung f\u00fcr die APU Yellow Carp (mobile Ryzen 6000 \u201eRembrandt\u201c-Prozessoren) wurde erweitert.\n<li class=\"l\"> Im Treiber i915 wurde die Unterst\u00fctzung f\u00fcr Intel Alderlake S Chips stabilisiert und die Unterst\u00fctzung der Intel PXP-Technologie (Protected Xe Path) implementiert, die die Durchf\u00fchrung eines hardwaregesch\u00fctzten Grafik-Sitzung auf Systemen mit Intel Xe-Chips erm\u00f6glicht.\n<li class=\"l\"> Im Treiber nouveau wurde an der Fehlerbehebung gearbeitet und der Stil des Codes verbessert.\n<li class=\"l\"> Die Unterst\u00fctzung f\u00fcr x86-kompatible CPUs Vortex (Vortex86MX) wurde hinzugef\u00fcgt. Linux lief zwar bereits auf solchen Prozessoren, aber eine explizite Identifikation der genannten CPUs war erforderlich, um den Schutz vor Spectre-\/Meltdown-Angriffen zu deaktivieren, die f\u00fcr die angegebenen Chips nicht anwendbar sind.\n<li class=\"l\"> Die anf\u00e4ngliche Unterst\u00fctzung f\u00fcr x86-Plattformen Surface Pro 8 und Surface Laptop Studio wurde hinzugef\u00fcgt.\n<li class=\"l\"> Ein Treiber zur Unterst\u00fctzung von Soundchips, die in APU AMD Yellow Carp, Van Gogh verwendet werden, wurde hinzugef\u00fcgt. Auch die Unterst\u00fctzung f\u00fcr Audiosysteme und Codecs wie Cirrus CS35L41, Maxim MAX98520\/MAX98360A, Mediatek MT8195, Nuvoton NAU8821, NVIDIA Tegra210, NXP i.MX8ULP, Qualcomm AudioReach, Realtek ALC5682I-VS, RT5682S, RT9120, Rockchip RV1126 und RK3568 wurde hinzugef\u00fcgt.\n<li class=\"l\"> Der Treiber ishtp_eclite wurde hinzugef\u00fcgt, um auf die integrierten Intel PSE (Programmable Service Engine) Controller \u00fcber das ISHTP (Integrated Sensor Hub Transport Protocol) zuzugreifen, beispielsweise um Informationen \u00fcber den Akku, die Temperatur und Daten im Zusammenhang mit UCSI (USB Type-C Connector System Software Interface) zu erhalten.\n<li class=\"l\"> Ein Treiber f\u00fcr Nintendo Switch-Controller wurde hinzugef\u00fcgt, der die Ger\u00e4te Switch Pro und Joy-Cons unterst\u00fctzt. Die Unterst\u00fctzung f\u00fcr Wacom Intuos BT Tablets (CTL-4100WL\/CTL-6100WL) und die Apple 2021 Magic Keyboard wurde hinzugef\u00fcgt. Die Unterst\u00fctzung f\u00fcr Sony PlayStation DualSense-Controller wurde verbessert. Unterst\u00fctzung f\u00fcr die seitlichen Tasten der Xiaomi Mi-Maus wurde hinzugef\u00fcgt.\n<li class=\"l\"> Der Treiber RT89 mit Unterst\u00fctzung f\u00fcr drahtlose Chips von Realtek 802.11ax wurde hinzugef\u00fcgt, ebenso wie Treiber f\u00fcr Ethernet-Adapter Asix AX88796C-SPI und Switches von Realtek RTL8365MB-VC.\n<li class=\"l\"> F\u00fcr die Apple M1 Chips wurden Treiber f\u00fcr PCI und PASemi i2c hinzugef\u00fcgt.\n<li class=\"l\"> Die Unterst\u00fctzung f\u00fcr ARM SoCs, Ger\u00e4te und Plattformen wie Raspberry Pi Compute Module 4, Fairphone 4, Snapdragon 690, LG G Watch R, Sony Xperia 10 III, Samsung Galaxy S4 Mini Value Edition, Xiaomi MSM8996 (Mi 5, Mi Note 2, Mi 5s, Mi Mix, Mi 5s Plus und Xiaomi Mi 5), Sony Yoshino (Sony Xperia XZ1 und Sony Xperia XZ Premium), F(x)tec Pro1 QX1000, Microchip LAN966, CalAmp LMU5000, Exegin Q5xR5, sama7g5, Samsung ExynosAutov9, Rockchip RK3566, RK3399 ROCK Pi 4A+, RK3399 ROCK Pi 4B+, Firefly ROC-RK3328-PC, Firefly ROC-RK3399-PC-PLUS, ASUS Chromebook Tablet CT100, Pine64 Quartz64-A, Netgear GS110EMX, Globalscale MOCHAbin 7040, NXP S32G2, Renesas R8A779M*, Xilinx Kria, Radxa Zero, JetHub D1\/H1 und Netronix E70K02 wurde hinzugef\u00fcgt.          <\/ul>\n<\/ul>\n<p>Quelle: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=56478\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.16. \u0421\u0440\u0435\u0434\u0438 \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0437\u0430\u043c\u0435\u0442\u043d\u044b\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439: \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u0432\u044b\u0437\u043e\u0432 futex_waitv \u0434\u043b\u044f \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 Windows-\u0438\u0433\u0440 \u0432 Wine, \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \u043e\u0448\u0438\u0431\u043e\u043a \u0432 \u0424\u0421 \u0447\u0435\u0440\u0435\u0437 fanotify, \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044f \u0444\u043e\u043b\u0438\u0430\u043d\u0442\u043e\u0432 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u0430\u043c\u044f\u0442\u044c\u044e, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043d\u044b\u0445 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439 AMX, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0440\u0435\u0437\u0435\u0440\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0430\u043c\u044f\u0442\u0438 \u0437\u0430 \u0441\u0435\u0442\u0435\u0432\u044b\u043c\u0438 \u0441\u043e\u043a\u0435\u0442\u0430\u043c\u0438, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0432 netfilter \u043a\u043b\u0430\u0441\u0441\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u043d\u0430 \u0441\u0442\u0430\u0434\u0438\u0438 &#171;egress&#187;, \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u043d\u0438\u0435 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-102933","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.16.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/de\/blog\/news\/reliz-yadra-linux-5-16\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0420\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.16 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.16.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/de\/blog\/news\/reliz-yadra-linux-5-16\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2022-01-10T13:36:38+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2022-01-10T13:36:38+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Ver\u00f6ffentlichung des Linux-Kernels 5.16 | ProHoster","description":"Nach zwei Monaten Entwicklung hat Linus Torvalds die Ver\u00f6ffentlichung des Linux-Kernels 5.16 vorgestellt.","canonical_url":"https:\/\/prohoster.info\/de\/blog\/news\/reliz-yadra-linux-5-16","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"de_DE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0420\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.16 | ProHoster","og:description":"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.16.","og:url":"https:\/\/prohoster.info\/de\/blog\/news\/reliz-yadra-linux-5-16","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2022-01-10T13:36:38+00:00","article:modified_time":"2022-01-10T13:36:38+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"102933","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2022-01-10 13:37:39","updated":"2026-02-09 17:11:18","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/102933","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/comments?post=102933"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/102933\/revisions"}],"predecessor-version":[{"id":164281,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/102933\/revisions\/164281"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=102933"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=102933"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=102933"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}