Neue Funktionen und Änderungen in UEK R6U3

Im Folgenden finden Sie die wichtigsten neuen Funktionen und Änderungen, die in Unbreakable Enterprise Kernel Release 6 Update 3 (UEK R6U3) enthalten sind.

Kernel-Version

UEK R6U3 verwendet die Version 5.4.17-2136 und den Build des UEK R6-Kernels, der Sicherheits- und Bugfixes sowie Treiberupdates umfasst.

Core Kernel-Funktionalität

UEK R6U3 bietet Core-Kernel-Funktionalität, die UEK R6 entspricht, aber auf das Upstream-Mainline-Kernel v5.4.83-Releasetag aktualisiert wird und Upstream-LTS-Bugfixes enthält, mit zusätzlichen Patches zur Verbesserung der vorhandenen Funktionalität und zur Bereitstellung kleinerer Bugfixes und Sicherheitsverbesserungen. Alle wichtigen Änderungen sind spezifisch für die Funktionalität, die für Oracle Database und andere Oracle-Software erforderlich ist.

WireGuard Kommunikationsprotokoll

Das WireGuard-Kommunikationsprotokoll verwendet verschlüsselte VPNs (Virtual Private Networks), indem Datenverkehr über das User Datagram Protocol (UDP) geleitet wird.

Hinweis

WireGuard, das seit UEK R6U1 in UEK R6 als Technologievorschaufunktion aktiviert ist, wird in UEK R6U3 vollständig unterstützt.

WireGuard ist ein sicherer, benutzerfreundlicher und schnellerer Ersatz für die Legacy-Tunnelprotokolle IPsec und OpenVPN. Die Funktion verwendet bewährte Kryptographieprotokolle und Algorithmen zum Schutz von Daten. Obwohl IPsec der Standard für sichere Netzwerkkommunikation bleibt, ist WireGuard einfacher zu konfigurieren und bereitzustellen. Im Vergleich dazu ist seine Konfiguration mit der Einrichtung von SSH vergleichbar. Dies sind einige der Gründe, warum Administratoren sich dafür entscheiden, neue Netzwerke mit der moderneren Kryptographie zu erstellen, die WireGuard verwendet.

WireGuard verwendet Public-Key-Verschlüsselung zur Identifizierung und Verschlüsselung, während OpenVPN Zertifikate für diese Aufgaben verwendet. Mit WireGuard wird die sichere Schlüsselgenerierung und -verwaltung im Hintergrund abgewickelt.

WireGuard verwendet einen Server/Client-Modus für seine Konfiguration und Bereitstellung. Beachten Sie, dass Sie WireGuard sowohl für IPv4- als auch für IPv6-Netzwerke konfigurieren und bereitstellen können.

Um WireGuard zu konfigurieren und bereitzustellen, muss das Package wireguard-tools auf dem Server- und Clientsystem installiert sein, was die Kommunikation zwischen beiden Hosts ermöglicht.

Mit dem folgenden Befehl können Sie prüfen, ob das Package wireguard-tools installiert ist:

$ rpm -qa | grep wireguard
                  

Mit dem folgenden Befehl können Sie prüfen, ob das Kernel-Modul wireguard auf dem System vorhanden ist:

$ modinfo wireguard
                  

Weitere Informationen und Schritt-für-Schritt-Anweisungen finden Sie unter Oracle Linux: Virtuelle private Netzwerke konfigurieren.

vmemmap Reduktionsfähigkeit für HugeTLB-Seiten hinzugefügt

Dieses Release enthält eine Verbesserung, die einige vmemmap-Seiten (Seiten mit Strukturseitenstrukturen) freigibt, die mit jeder hugetlbpage verknüpft sind. Durch das Entfernen redundanter Page Structs für HugeTLB-Seiten kann der Speicher für andere Zwecke an den Buddy Allocationator zurückgegeben werden.

Um diese Funktion zu aktivieren, booten Sie das System mit der Option hugetlb_free_vmemmap=on. Wenn diese Option aktiviert ist, werden Meldungen wie die folgenden beim Booten angezeigt:

HugeTLB: can free 4094 vmemmap pages for hugepages-1048576kB
HugeTLB: can free 6 vmemmap pages for hugepages-2048kB

io_uring Asynchrones I/O-Framework

In diesem Release wurde das asynchrone I/O-(AIO-)Framework io_uring weiter integriert. io_uring ist eine Linux-Kernelschnittstelle, die Übermittlungs- und Abschlussqueue-Ringe bereitstellt, die dann zwischen dem Kernel und dem Benutzerbereich gemeinsam verwendet werden, um Kopien zu vermeiden.

Neben den etablierteren Features, die dem io_uring-Framework in diesem Release hinzugefügt wurden, umfasst UEK R6U3 auch das neue Feature für den abgefragten I/O-Modus (IORING_SETUP_IOPOLL), das die folgende Funktionalität bietet:

  • Standardmäßige Dateikontrollvorgänge: FALLOCATE, OPENAT2, STATX, MADVISE, FADVISE und TEE.

  • Vorgänge an Sockets: Nachrichten ACCEPT, CONNECT, SEND(2) und RECV(2) und EPOLL_CTL.

  • Fähigkeit zur gemeinsamen Verwendung von io-wq workqueue (IORING_SETUP_ATTACH_WQ) von einem anderen Ring.

  • Hinzufügung des Aufrufs IORING_REGISTER_PROBE zum Testen und Empfangen von Informationen zu unterstützten Funktionen aus dem io_uring-Framework im Kernel.

  • Aufnahme des SPLICE(2)-Aufrufs.

  • Aufnahme des IORING_REGISTER_RESTRICTIONS-Aufrufs, mit dem die Anwendung Zugriff auf ihre Dateideskriptoren durch nicht vertrauenswürdige Anwendungen oder Gäste erteilt.

  • IORING_OP_PROVIDE_BUFFERS-Aufruf, der die Pufferregistrierungsinfrastruktur verwendet, um die Übergabe einer addr/len zu aktivieren, die mit einer Puffer-ID und einer Puffergruppen-ID verknüpft ist.

  • IORING_BUFFER_SELECT-Unterstützung für die vektorisierten Leseaufrufe RING_OP_READV und IORING_OP_READVMSG.

kabi_whitelist Package umbenannt kabi_stablelist

Das kabi_whitelist-Package wurde in kabi_stablelist umbenannt. Diese Änderung wurde in Übereinstimmung mit der Verpflichtung von Oracle vorgenommen, problematische und potenziell beleidigende Sprache zu ersetzen.

Hinweis

In Oracle Linux 8 wurde bereits eine ähnliche Umbenennung vorgenommen.

Verschachtelte Virtualisierung auf der AMD-Plattform

Die Fähigkeit zur verschachtelten Virtualisierung auf der AMD 64-Bit (x86_64)-Plattform wird in diesem Release durch die Implementierung einer umfangreichen Anzahl von Stabilitätskorrekturen verbessert.

Verbesserungen bei NVMe

Um den Änderungen der NVMe-Standards gerecht zu werden, und da sich die Technologie weiterentwickelt und verändert, werden fortlaufende Verbesserungen an der Non-Volatile Memory Express-(NVMe-)Funktion vorgenommen. Im Vergleich zu Legacy-Protokollen bietet NVMe erweiterte Funktionen für den Zugriff auf Hochgeschwindigkeits-Speichermedien.

Neben mehreren Bugfixes führt dieses Release das Feature "NVMe Target Passthru" ein. Mit der Funktion "Ziel-Passthru" können Sie einen gesamten NVMe-Controller über die NVM Express over Fabrics-(NVMe-oF-)Spezifikation exportieren. Wenn der Namespace auf diese Weise exportiert wird, werden alle NVMe-Befehle im Gegensatz zum Exportieren als Block-Device unverändert an den angegebenen Controller übergeben, einschließlich administrativer Befehle und Vendor Unique Commands (VUCs). Ein Passthru-Ziel stellt dem Remote-Host alle Namespaces für ein bestimmtes Gerät bereit.

Neue RDMAIP Tracepoints eingeführt

In früheren Releases verwendete das resilient_rdmaip-Kernelmodul die Funktion trace_printk() direkt zum Debuggen seiner Infrastruktur, was zu einer Bannerwarnung über trace_printk() und Speicherauslastung führte, die für das resilient_rdmaip-Kernelmodul nicht relevant war.

UEK R6U3 führt neue Tracepoints ein, die die Verwendung von trace_printk() für das Debugging der Infrastruktur des resilient_rdmaip-Kernelmoduls ersetzen.

Jeder der folgenden neuen Tracepoints entspricht den drei Debug-Ebenen, die von resilienten RDMA-Debugmeldungen unterstützt werden:

  • trace_rdma_debug_l1

  • trace_rdma_debug_l2

  • trace_rdma_debug_l3

Verbesserung für sicheren Start

In diesem Release wurde Secure Boot geändert, um zusätzlich den Plattformschlüsselring zu prüfen, der die Liste "Machine Owner Key (MOK)" enthält. Durch diese Verbesserung können Module von Drittanbietern und benutzerdefinierte, von Schlüsseln signierte Module geladen werden, wenn der sichere Start aktiviert ist.

vDPA-Implementierung auf Mellanox ConnectX-6Dx für Oracle Linux

Das Virtual Data Path Acceleration-(vDPA-)Framework auf dem Mellanox ConnectX-6Dx-Netzwerkadapter wurde in diesem Release verbessert. Das vDPA-Framework unterstützt neue Technologien wie Single Root I/O Virtualization (SR-IOV) Virtual Function und Mellanox SubFunction, indem es eine Abstraktions- und Übersetzungsebene oben bereitstellt. vDPA verwendet das Virtio-Ringlayout und platziert einen einzelnen, standardmäßigen Virtio-Treiber im Gast, der von der Anbieterimplementierung entkoppelt ist.

In UEK R6U3 umfassen bemerkenswerte vDPA-Verbesserungen die vDPA-Verwaltungstool-API für Orchestrierung und Konfiguration, vDPA SubFunction-(SF-)Unterstützung für die Umgehung der von der PCIe-Spezifikation vorgegebenen Grenze für die Anzahl der virtuellen Funktionen (VFs) pro erstellbarer physischer Funktion (PF) und die Unterstützung des Mellanox mlx5_vdpa-Treibers für die Türklingelzuordnung.

vhost und vhost-scsi Leistungsverbesserungen

In diesem Release werden einige Performanceverbesserungen im Zusammenhang mit dem Blockspeicher für die Module vhost und vhost-scsi eingeführt. Insbesondere wurden Kernelverbesserungen vorgenommen, um IOPS (Eingabe-/Ausgabevorgänge pro Sekunde) für ein vhost-SCSI-Gerät über dm-multipath zu steigern.

Darüber hinaus wurde eine Verbesserung vorgenommen, damit Qemu mehrere vhost-Worker-Threads erstellen und sie verschiedenen Gast-SCSI-Geräten virtqueues zuordnen kann.

Standard-Policy für Integritätsmessungsarchitektur

Das Integrity Measurement Architecture-(IMA-)Subsystem, das seit dem Upstream-Release 2.6.30 im Linux-Kernel vorhanden ist, verwaltet eine Liste der Hashes sensibler Dateien auf einem System. Diese Informationen können das Laden von Dateien oder Binärdateien verhindern, die nicht mit diesen Hashes übereinstimmen. Die IMA-Funktion unterstützt die Aufrechterhaltung der Systemintegrität und kann auch verwendet werden, um Änderungen an systemkritischen Dateien zu verhindern. Eine IMA-Standardrichtlinie ist in UEK R6U3 festgelegt und wird auch in einem Errata-Update für UEK R6U2 zurückportiert. Die aktualisierte Policy kann in /sys/kernel/security/ima/policy geprüft werden:

measure func=KEXEC_KERNEL_CHECK
measure func=MODULE_CHECK

Die Standardrichtlinie misst das Abbild kexec und alle Binärdateien des Kernel-Moduls. Beachten Sie, dass diese Standard-Policy zwar die Messung dieser Artikel ermöglicht, aber keine Beurteilungs-Policy definiert.

Funktionen der Technologievorschau

Mehrere Features werden derzeit untersucht und für die Freigabe innerhalb der UEK R6 entwickelt. Die folgenden Funktionen sind in UEK R6U3 als Technologievorschau verfügbar.

  • Kernplanung

    Das im Kernel aktivierte Core-Planungsfeature begrenzt vertrauenswürdige Aufgaben auf die gleichzeitige Ausführung auf CPU-Cores, die Compute-Ressourcen gemeinsam verwenden. Diese Funktion mindert bestimmte Kategorien von Prozessor-Bugs mit "Core Shared Cache", die zu Datenlecks und anderen damit verbundenen Sicherheitslücken führen könnten. Seit UEK R6U1 ist die Kernplanung in UEK R6 als Technologievorschau-Funktion aktiviert. Diese Funktion wird derzeit aktiv weiterentwickelt.

  • NFS v4.2 - serverseitige Kopie

    NFS v4.2 Server-Side Copy-(SSC-)Funktionalität wird aus dem Upstream-Kernel zurückportiert und ist seit UEK R6U1 in UEK R6 als Technologievorschau verfügbar. Die serverseitige Kopierfunktion bietet Mechanismen, mit denen ein NFS-Client Dateidaten auf einem Server oder zwischen zwei Servern kopieren kann, ohne dass sie über das Netzwerk über den NFS-Client übertragen werden.

Veraltete Features

Die folgenden Funktionen sind in diesem UEK R6-Release veraltet.

oracleasm Kernel-Modul veraltet

Das oracleasm-Kernelmodul ist in diesem Release veraltet. Beachten Sie, dass das Modul zwar weiterhin in UEK R6U3 unterstützt wird, aber in einer zukünftigen UEK-Version entfernt werden kann.

DRBD veraltet

Das DRBD-(Distributed Replicated Block Device-)Kernelmodul und das zugehörige drbd-utils-Package sind mit UEK R6U3 veraltet. Das DRBD-Kernelmodul wurde als Technologievorschau in UEK R4 eingeführt und wird weiterhin in UEK R5 und UEK R6 aktiviert. Dieses Modul und das drbd-utils-Package können jedoch in einem zukünftigen UEK-Release entfernt werden.

Cisco fnic 1.6-Treiber nicht unterstützt

Cisco unterstützt nicht mehr den Cisco FCoE HBA-Treiber (fnic 1.6), der aus dem Upstream-Kernel stammt und in den meisten Kernel verfügbar ist, einschließlich UEK R5, UEK R6 und UEK R7. Cisco stellt einen vollständig unterstützten UCS Linux-Treiber (Version 2.0.0.83 und höher) bereit, der auf der Downloadseite der Cisco-Software auf Oracle Linux mit UEK R5 und späteren UEK-Releases getestet wurde und mit diesem kompatibel ist. Das Treiberpackage enthält Funktionen, die im aktuell enthaltenen Treibermodul nicht verfügbar sind, wie NVMe-Unterstützung und Multi-Queue-Unterstützung.

Kunden, die Oracle Linux auf Cisco-Servern ausführen, müssen das Cisco-Treiberpaket installieren, um Treiberkorrekturen, Treiberupdates, neue Hardwareunterstützung und Unterstützung neuer Funktionen zu erhalten. Wenden Sie sich an Cisco, um weitere Informationen zu Treiberlösungen für Oracle Linux zu erhalten.

Treiberaktualisierungen

Der Unbreakable Enterprise Kernel Release 6 unterstützt eine große Anzahl von Hardwaregeräten. In enger Zusammenarbeit mit Hardware- und Speicheranbietern hat Oracle mehrere Gerätetreiber aus den Versionen in Mainline Linux 5.4 aktualisiert.

Eine vollständige Liste der Treibermodule, die im letzten Update von UEK R6 enthalten sind, sowie Versionsinformationen finden Sie im Anhang unter Treibermodule in Unbreakable Enterprise Kernel Release 6 (x86_64).

Die folgenden neuen Funktionen sind in den Treibern aufgeführt, die mit UEK R6U3 ausgeliefert werden:

  • Broadcom BCM573xx-Netzwerktreiber

    Der Broadcom BCM573xx-Netzwerktreiber bnxt_en wird in dieser Version auf Version 1.10.2 aktualisiert. Eine große Anzahl von Upstream- und Vendor-Patches ist enthalten, um verschiedene Bugs zu beheben und neuere Features und Updates bereitzustellen. Insbesondere ist die PTP-Funktionalität aktiviert, und es wurden mehrere Verbesserungen für RoCE eingeführt.

  • Cisco FCoE HBA-Treiber

    Der Cisco FCoE HBA-Treiber fnic wird in dieser Version auf Version 1.6.0.53 aktualisiert. Mehrere Upstream-Patches sind enthalten, um verschiedene Bugs zu beheben.

    Siehe Cisco fnic 1.6 driver Unsupported.

  • Linux-Treiber der Intel Ethernet Connection E800 Series

    Der Linux-Treiber der Intel Ethernet Connection E800 Series, ice, wird in diesem Release weiterhin als Version 0.8.2-k gemeldet, enthält jedoch eine große Anzahl von vom Hersteller bereitgestellten Patches. Dieser Treiber wird auf die neuesten 25 GbE- und 100GbE E810-Netzwerkschnittstellenkarten getestet.

  • Broadcom Emulex LightPulse Fibre Channel SCSI-Treiber

    Der Broadcom Emulex LightPulse Fibre Channel SCSI-Treiber lpfc wird auf Version 12.8.0.10 aktualisiert, mit vom Hersteller bereitgestellten Patches und Bugfixes. Mehrere Patchupdates wurden zusätzlich für den NVMe Fibre Channel-Transporttreiber nvme-fc eingespielt, um die Funktionalität zu verbessern und vom Anbieter identifizierte Probleme zu beheben.

  • Microsoft Azure Network Adapter-Treiber

    Der Microsoft Azure Network Adapter-Treiber mana ist in diesem Release enthalten. Upstream-Patches und vom Anbieter bereitgestellte Patches sind enthalten, und der Treiber ist für die Verwendung auf Oracle Linux 8 vorgesehen.

  • MPI3 Storage Controller-Gerätetreiber

    Der MPI3 Storage Controller-Gerätetreiber mpi3mr ist in diesem Release unter Version 00.255.45.01 enthalten. Upstream- und Vendor-Patches sind enthalten und der Treiber soll die nächste Generation von 96XX HBA- und RAID-Controller-Geräten von Broadcom unterstützen.

  • QLogic FastLinQ 4xxxx Kernmodul

    Das QLogic FastLinQ 4xxxx Core-Modul, qed, ist auf Version 8.37.0.20 aktualisiert und enthält viele zusätzliche vom Anbieter bereitgestellte Patches, einschließlich Patches für die Firmware der Version 8.42.2.0.

  • QLogic FastLinQ 4xxxx Ethernet-Treiber

    Der Ethernet-Treiber QLogic FastLinQ 4xxxx, qede, wird auf Version 8.37.0.20 aktualisiert und enthält zusätzliche vom Anbieter bereitgestellte Patches.

  • QLogic FastLinQ 4xxxx FCoE-Modul

    Das QLogic FastLinQ 4xxxx FCoE-Modul, qedf, wurde auf Version 8.42.3.0 aktualisiert und enthält vom Hersteller bereitgestellte Patches, um diesen Treiber entsprechend den Upstreamänderungen zu aktualisieren.

  • QLogic FastLinQ 4xxxx iSCSI-Modul

    Das QLogic FastLinQ 4xxxx iSCSI-Modul, qedi, wurde auf Version 8.37.0.20 aktualisiert und enthält vom Hersteller bereitgestellte Patches, um diesen Treiber entsprechend den Upstreamänderungen zu aktualisieren.

  • QLogic Fibre Channel HBA-Treiber

    Der QLogic Fibre Channel HBA-Treiber qla2xxx ist auf Version 10.02.00.106-k aktualisiert und enthält mehrere vom Hersteller bereitgestellte Patches.

  • Microsemi Smart Family Controller-Treiber

    Der Microsemi Smart Family Controller-Treiber smartpqi wurde auf Version 2.1.8-045 aktualisiert und enthält mehrere Upstream-Patches.

  • pvpanic-Treiber

    Der pvpanic-Treiber, mit dem Ereignisse in libvirtd ausgelöst werden, falls eine virtuelle Gastmaschine auf eine Kernelpanik stößt, wird aktualisiert und enthält eine PCI-Komponente, um diese Funktionalität auf Arm-(aarch64-)Plattformen zu aktivieren. Zuvor funktionierte der Treiber nur als ISA-Busgerät, das seine Verwendung auf x86-Plattformen beschränkte.