Linux 5.18 kernel-release

Na twee maanden ontwikkeling presenteerde Linus Torvalds de release van de Linux-kernel 5.18. Een van de meest opvallende veranderingen: er werd een grote opschoning van verouderde functionaliteit uitgevoerd, de Reiserfs FS werd verouderd verklaard, gebeurtenissen voor het traceren van gebruikersprocessen werden geïmplementeerd, ondersteuning voor het mechanisme voor het blokkeren van Intel IBT-exploits werd toegevoegd, een detectiemodus voor bufferoverflow werd ingeschakeld toen met behulp van de memcpy()-functie is een mechanisme toegevoegd voor het volgen van fprobe-functieaanroepen. De prestaties van de taakplanner op AMD Zen CPU's zijn verbeterd, er is een stuurprogramma voor het beheren van Intel CPU-functionaliteit (SDS) opgenomen en er zijn enkele patches geïntegreerd voor het herstructureren van headerbestanden, en het gebruik van de C11-standaard is goedgekeurd.

De nieuwe versie bevat 16206 fixes van 2127 ontwikkelaars (in de laatste release waren er 14203 fixes van 1995 ontwikkelaars), de patchgrootte is 108 MB (de wijzigingen hadden betrekking op 14235 bestanden, 1340982 regels code werden toegevoegd en 593836 regels verwijderd). Ongeveer 44% van alle wijzigingen die in 5.18 zijn geïntroduceerd, hebben betrekking op apparaatstuurprogramma's, ongeveer 16% van de wijzigingen heeft betrekking op het updaten van code die specifiek is voor hardware-architecturen, 11% heeft betrekking op de netwerkstack, 3% heeft betrekking op bestandssystemen en 3% zijn gerelateerd aan interne kernelsubsystemen.

Belangrijkste innovaties in kernel 5.18:

  • Schijfsubsysteem, I/O en bestandssystemen
    • Het Btrfs-bestandssysteem heeft ondersteuning toegevoegd voor het doorsturen van gecomprimeerde gegevens bij het uitvoeren van verzend- en ontvangstbewerkingen. Voorheen decomprimeerde de verzendende kant bij het gebruik van verzenden/ontvangen de gegevens die in gecomprimeerde vorm waren opgeslagen, en de ontvangende kant comprimeerde deze opnieuw voordat deze werd geschreven. In de 5.18-kernel kregen gebruikersruimtetoepassingen die gebruik maakten van verzend-/ontvangst-oproepen de mogelijkheid om gecomprimeerde gegevens te verzenden zonder opnieuw te verpakken. De functionaliteit is geïmplementeerd dankzij de nieuwe ioctl-bewerkingen BTRFS_IOC_ENCODED_READ en BTRFS_IOC_ENCODED_WRITE, waarmee u direct informatie naar gebieden kunt lezen en schrijven.

      Bovendien verbetert Btrfs de fsync-prestaties. De mogelijkheid toegevoegd om te ontdubbelen en reflink uit te voeren (metagegevens van bestanden klonen door een link naar bestaande gegevens te maken zonder deze daadwerkelijk te kopiëren) voor de gehele opslag, niet beperkt tot koppelpunten.

    • In de Direct I/O-modus is het mogelijk om toegang te krijgen tot gecodeerde bestanden wanneer fscrypt inline-codering gebruikt, waarbij coderings- en decoderingsbewerkingen worden uitgevoerd door de schijfcontroller in plaats van door de kernel. Met reguliere kernelversleuteling is toegang tot versleutelde bestanden met behulp van Direct I/O nog steeds onmogelijk, omdat toegang wordt verkregen tot bestanden waarbij het buffermechanisme in de kernel wordt omzeild.
    • De NFS-server biedt standaard ondersteuning voor het NFSv3-protocol, waarvoor nu geen afzonderlijke inschakeling vereist is en beschikbaar is wanneer NFS algemeen is ingeschakeld. NFSv3 wordt beschouwd als de belangrijkste en altijd ondersteunde versie van NFS, en de ondersteuning voor NFSv2 kan in de toekomst worden stopgezet. De efficiëntie van het lezen van de mapinhoud is aanzienlijk verbeterd.
    • Het ReiserFS-bestandssysteem is verouderd en zal naar verwachting in 2025 worden verwijderd. Het afschaffen van ReiserFS zal de inspanning verminderen die nodig is om wijzigingen in het bestandssysteem te behouden die verband houden met ondersteuning voor de nieuwe API voor mounten, iomap en boekdelen.
    • Voor het F2FS-bestandssysteem is de mogelijkheid geïmplementeerd om gebruikers-ID's van aangekoppelde bestandssystemen toe te wijzen, die wordt gebruikt om de bestanden van een specifieke gebruiker op een aangekoppelde buitenlandse partitie te vergelijken met een andere gebruiker op het huidige systeem.
    • De code voor het berekenen van statistieken in Device-mapper-handlers is herwerkt, waardoor de nauwkeurigheid van de boekhouding in handlers zoals dm-crypt aanzienlijk is verbeterd.
    • NVMe-apparaten ondersteunen nu 64-bit checksums voor integriteitscontrole.
    • Voor het exfat-bestandssysteem is een nieuwe mount-optie "keep_last_dots" voorgesteld, die het wissen van punten aan het einde van de bestandsnaam uitschakelt (in Windows worden punten aan het einde van de bestandsnaam standaard verwijderd).
    • EXT4 verbetert de prestaties van de fast_commit-modus en verhoogt de schaalbaarheid. De mount-optie “mb_optimize_scan”, waarmee de prestaties kunnen worden verbeterd in omstandigheden van fragmentatie van grote bestandssystemen, is aangepast voor het werken met bestanden met uitbreidingen.
    • Ondersteuning voor schrijfstreams in het subsysteem dat blokapparaten ondersteunt, is stopgezet. Deze functie werd voorgesteld voor SSD's, maar was niet wijdverspreid en er zijn momenteel geen apparaten in gebruik die deze modus ondersteunen en het is onwaarschijnlijk dat ze in de toekomst zullen verschijnen.
  • Geheugen- en systeemservices
    • De integratie van een reeks patches is begonnen, waardoor de tijd voor het opnieuw opbouwen van de kernel aanzienlijk kan worden verkort door de hiërarchie van headerbestanden te herstructureren en het aantal onderlinge afhankelijkheden te verminderen. Kernel 5.18 bevat patches die de structuur van de headerbestanden van de taakplanner (kernel/sched) optimaliseren. Vergeleken met de vorige release werd het CPU-tijdverbruik bij het samenstellen van kernel/sched/code met 61% verminderd, en de werkelijke tijd met 3.9% (van 2.95 naar 2.84 sec).
    • Kernelcode mag de C11-standaard gebruiken, gepubliceerd in 2011. Voorheen moest code die aan de kernel werd toegevoegd, voldoen aan de ANSI C (C89)-specificatie, die in 1989 werd gevormd. In de kernelbuildscripts van 5.18 werd de optie ‘—std=gnu89’ vervangen door ‘—std=gnu11 -Wno-shift-negative-value’. De mogelijkheid om de C17-standaard te gebruiken werd overwogen, maar in dit geval zou het nodig zijn om de minimaal ondersteunde versie van GCC te verhogen, terwijl de opname van C11-ondersteuning past in de huidige vereisten voor de GCC-versie (5.1).
    • Verbeterde taakplanningsprestaties op AMD-processors met Zen-microarchitectuur, die meerdere Last Level Cache (LLC) bieden voor elk knooppunt met lokale geheugenkanalen. De nieuwe versie elimineert de LLC-onbalans tussen NUMA-nodes, wat leidde tot een aanzienlijke prestatieverbetering voor sommige soorten werklast.
    • Tools voor het traceren van applicaties in de gebruikersruimte zijn uitgebreid. De nieuwe kernelversie voegt de mogelijkheid toe voor gebruikersprocessen om gebruikersgebeurtenissen te creëren en gegevens naar de tracebuffer te schrijven, die kunnen worden bekeken via standaard kerneltraceringshulpprogramma's zoals ftrace en perf. Traceergebeurtenissen in de gebruikersruimte worden geïsoleerd van kerneltraceergebeurtenissen. De gebeurtenisstatus kan worden bekeken via het bestand /sys/kernel/debug/tracing/user_events_status, en gebeurtenisregistratie en gegevensregistratie via het bestand /sys/kernel/debug/tracing/user_events_data.
    • Een mechanisme toegevoegd voor het monitoren van (probe) functieaanroepen - fprobe. De fprobe API is gebaseerd op ftrace, maar wordt alleen beperkt door de mogelijkheid om callback-handlers te koppelen aan functie-ingangspunten en functie-uitgangspunten. In tegenstelling tot kprobes en kretprobes kunt u met het nieuwe mechanisme één handler voor meerdere functies tegelijk gebruiken.
    • Ondersteuning voor oudere ARM-processors (ARMv4 en ARMv5) die niet zijn uitgerust met een geheugenbeheereenheid (MMU) is stopgezet. Ondersteuning voor ARMv7-M-systemen zonder MMU blijft behouden.
    • Ondersteuning voor de RISC-achtige NDS32-architectuur die wordt gebruikt in Andes Technologies-processors is stopgezet. De code is verwijderd vanwege gebrek aan onderhoud en gebrek aan vraag naar NDS32-ondersteuning in de belangrijkste Linux-kernel (de overige gebruikers gebruiken gespecialiseerde kernelbuilds van hardwarefabrikanten).
    • Standaard is het bouwen van de kernel met ondersteuning voor het uitvoerbare bestandsformaat a.out uitgeschakeld voor de alpha- en m68k-architecturen, die dit formaat blijven gebruiken. Het is waarschijnlijk dat ondersteuning voor het oude a.out-formaat binnenkort volledig uit de kernel zal worden verwijderd. Plannen om het a.out-formaat te verwijderen worden sinds 2019 besproken.
    • De PA-RISC-architectuur biedt minimale ondersteuning voor het vDSO-mechanisme (Virtual Dynamic Shared Objects), dat een beperkte set systeemaanroepen biedt die beschikbaar zijn in de gebruikersruimte zonder dat er van context wordt gewisseld. vDSO-ondersteuning maakte het mogelijk om de mogelijkheid te implementeren om met een niet-uitvoerbare stapel te draaien.
    • Ondersteuning toegevoegd voor het Intel HFI-mechanisme (Hardware Feedback Interface), waarmee de hardware informatie naar de kernel kan verzenden over de huidige prestaties en energie-efficiëntie van elke CPU.
    • Er is een stuurprogramma toegevoegd voor het Intel SDSi-mechanisme (Software-Defined Silicon), waarmee u de opname van extra functies in de processor kunt regelen (bijvoorbeeld gespecialiseerde instructies en extra cachegeheugen). Het idee is dat chips tegen een lagere prijs kunnen worden geleverd met vergrendelde geavanceerde functies, die vervolgens kunnen worden “aangekocht” en extra mogelijkheden kunnen worden geactiveerd zonder hardwarevervanging van de chip.
    • Het amd_hsmp-stuurprogramma is toegevoegd ter ondersteuning van de AMD HSMP-interface (Host System Management Port), die toegang biedt tot processorbeheerfuncties via een reeks speciale registers die zijn verschenen in AMD EPYC-serverprocessors vanaf de Fam19h-generatie. Via HSMP kunt u bijvoorbeeld gegevens verkrijgen over het stroomverbruik en de temperatuur, frequentielimieten instellen, verschillende prestatieverbeteringsmodi activeren en geheugenparameters beheren.
    • De io_uring asynchrone I/O-interface implementeert de IORING_SETUP_SUBMIT_ALL optie om een ​​set bestandsdescriptors in een ringbuffer te registreren, en de IORING_OP_MSG_RING operatie om een ​​signaal van de ene ringbuffer naar een andere ringbuffer te sturen.
    • Het DAMOS-mechanisme (Data Access Monitoring-based Operation Schemes), waarmee geheugen kan worden vrijgegeven, rekening houdend met de frequentie van geheugentoegang, heeft uitgebreide mogelijkheden voor het monitoren van geheugenbewerkingen vanuit de gebruikersruimte.
    • Een derde reeks patches is geïntegreerd met de implementatie van het concept van paginafolio's, die lijken op samengestelde pagina's, maar een verbeterde semantiek en een duidelijkere organisatie van het werk hebben. Door tomes te gebruiken, kunt u het geheugenbeheer in sommige kernelsubsystemen versnellen. In de voorgestelde patches zijn functies voor intern geheugenbeheer vertaald naar folio's, inclusief variaties op de functie get_user_pages(). Ondersteuning geboden voor het maken van grote volumes in vooruitleescode.
    • Het assemblagesysteem ondersteunt nu USERCFLAGS en USERLDFLAGS omgevingsvariabelen, waarmee u extra vlaggen kunt doorgeven aan de compiler en linker.
    • In het eBPF-subsysteem biedt het BTF-mechanisme (BPF Type Format), dat typecontrole-informatie in BPF-pseudocode levert, de mogelijkheid om annotaties toe te voegen aan variabelen die verwijzen naar geheugengebieden in de gebruikersruimte. Annotaties helpen het BPF-codeverificatiesysteem om geheugentoegang beter te identificeren en te verifiëren.
    • Er is een nieuwe geheugentoewijzingshandler voorgesteld voor het opslaan van geladen BPF-programma's, die een efficiënter gebruik van geheugen mogelijk maakt in situaties waarin een groot aantal BPF-programma's wordt geladen.
    • De vlag MADV_DONTNEED_LOCKED is toegevoegd aan de systeemaanroep madvise(), die hulpmiddelen biedt voor het optimaliseren van het procesgeheugenbeheer, die een aanvulling vormt op de bestaande vlag MADV_DONTNEED, waarmee de kernel vooraf kan worden geïnformeerd over de aanstaande vrijgave van een geheugenblok, d.w.z. dat dit blok niet langer nodig is en door de kernel kan worden gebruikt. In tegenstelling tot MADV_DONTNEED is het gebruik van de vlag MADV_DONTNEED_LOCKED toegestaan ​​voor geheugenpagina's die in het RAM zijn vastgezet en die, wanneer madvise wordt aangeroepen, worden verwijderd zonder hun vastgezette status te wijzigen en, in het geval van een daaropvolgende toegang tot het blok en het genereren van een “pagina fout”, worden geretourneerd met behoud van de binding. Bovendien is er een wijziging toegevoegd waardoor de vlag MADV_DONTNEED kan worden gebruikt met grote geheugenpagina's in HugeTLB.
  • Virtualisatie en beveiliging
    • Voor de x86-architectuur is ondersteuning toegevoegd voor het Intel IBT-commandostroombeschermingsmechanisme (Indirect Branch Tracking), dat het gebruik van exploit-constructietechnieken met behulp van return-georiënteerde programmeertechnieken (ROP, Return-Oriented Programming) verhindert, waarbij de exploit wordt gevormd in de vorm van een reeks oproepen die al bestaan ​​in het geheugen van stukjes machine-instructies die eindigen met een control return-instructie (in de regel zijn dit de uiteinden van functies). De essentie van de geïmplementeerde beveiligingsmethode is om indirecte overgangen naar de hoofdtekst van een functie te blokkeren door een speciale ENDBR-instructie aan het begin van de functie toe te voegen en de uitvoering van een indirecte overgang alleen toe te staan ​​in het geval van een overgang naar deze instructie (een indirecte instructie). aanroepen via JMP en CALL moeten altijd vallen onder de ENDBR-instructie, die helemaal aan het begin van de functies wordt geplaatst).
    • Strenge controle van buffergrenzen in de functies memcpy(), memmove() en memset() ingeschakeld, uitgevoerd tijdens het compileren wanneer de CONFIG_FORTIFY_SOURCE-modus is ingeschakeld. De toegevoegde verandering komt neer op het controleren of elementen van constructies waarvan de omvang bekend is, de grenzen overschrijden. Opgemerkt wordt dat de geïmplementeerde functie het mogelijk zou maken om alle memcpy()-gerelateerde kernelbufferoverflows te blokkeren die in ten minste de afgelopen drie jaar zijn geïdentificeerd.
    • Het tweede deel van de code toegevoegd voor de bijgewerkte implementatie van de RDRAND pseudo-random number generator, die verantwoordelijk is voor de werking van de /dev/random en /dev/urandom apparaten. De nieuwe implementatie valt op door het verenigen van de werking van /dev/random en /dev/urandom, het toevoegen van bescherming tegen het verschijnen van duplicaten in de stroom willekeurige getallen bij het starten van virtuele machines, en het overschakelen naar het gebruik van de BLAKE2s-hashfunctie in plaats van SHA1 voor entropiemengbewerkingen. De wijziging verbeterde de veiligheid van de generator van pseudo-willekeurige getallen door het problematische SHA1-algoritme te elimineren en het overschrijven van de RNG-initialisatievector te elimineren. Omdat het BLAKE2s-algoritme qua prestaties superieur is aan SHA1, had het gebruik ervan ook een positief effect op de prestaties.
    • Voor de ARM64-architectuur is ondersteuning toegevoegd voor een nieuw pointer-authenticatiealgoritme - “QARMA3”, dat sneller is dan het QARMA-algoritme, terwijl het juiste beveiligingsniveau behouden blijft. Met deze technologie kunt u gespecialiseerde ARM64-instructies gebruiken om retouradressen te verifiëren met behulp van digitale handtekeningen die zijn opgeslagen in de ongebruikte bovenste bits van de aanwijzer zelf.
    • Voor de ARM64-architectuur is ondersteuning geïmplementeerd voor assemblage met de opname in GCC 12 van een beveiligingsmodus tegen het overschrijven van het retouradres van een functie in het geval van een bufferoverloop op de stapel. De essentie van de beveiliging is om het retouradres op te slaan in een aparte “schaduwstapel” nadat de besturing naar een functie is overgedragen en dit adres is opgehaald voordat de functie wordt verlaten.
    • Een nieuwe sleutelhanger toegevoegd - "machine", met daarin de sleutels van de systeemeigenaar (MOK, Machine Owner Keys), ondersteund in de shim-bootloader. Deze sleutels kunnen worden gebruikt om kernelcomponenten die na het opstarten zijn geladen (bijvoorbeeld kernelmodules) digitaal te ondertekenen.
    • Ondersteuning verwijderd voor asymmetrische privésleutels voor TPM's, die werden aangeboden in een oudere versie van TPM, kenden beveiligingsproblemen en werden in de praktijk niet algemeen toegepast.
    • Bescherming van gegevens toegevoegd met type size_t tegen overflows van gehele getallen. De code bevat handlers size_mul(), size_add() en size_sub(), waarmee je veilig maten kunt vermenigvuldigen, optellen en aftrekken met het type size_t.
    • Bij het bouwen van de kernel zijn de vlaggen “-Warray-bounds” en “-Wzero-length-bounds” ingeschakeld, die waarschuwingen weergeven wanneer de index de array-grens overschrijdt en wanneer arrays met een lengte van nul worden gebruikt.
    • Het virtio-crypto-apparaat heeft ondersteuning toegevoegd voor codering met behulp van het RSA-algoritme.
  • Netwerksubsysteem
    • Bij de implementatie van netwerkbruggen is ondersteuning voor de poortbindingsmodus (vergrendelde modus) toegevoegd, waarbij de gebruiker alleen verkeer via de poort kan sturen vanaf een geautoriseerd MAC-adres. De mogelijkheid om verschillende structuren te gebruiken om de status van het STP-protocol (Spanning Tree Protocol) te evalueren is ook toegevoegd. Voorheen konden VLAN's alleen rechtstreeks aan STP (1:1) worden toegewezen, waarbij elk VLAN afzonderlijk werd beheerd. De nieuwe versie voegt de parameter mst_enable toe. Indien ingeschakeld, wordt de status van VLAN's bestuurd door de MST-module (Multiple Spanning Trees) en kan de binding van VLAN's overeenkomen met het M:N-model.
    • Er werd verder gewerkt aan het integreren van tools in de netwerkstack om de redenen voor het laten vallen van pakketten (oorzaakcodes) op te sporen. De redencode wordt verzonden wanneer het aan het pakket gekoppelde geheugen wordt vrijgegeven en maakt situaties mogelijk zoals het weggooien van pakketten vanwege headerfouten, detectie van rp_filter spoofing, ongeldige checksum, onvoldoende geheugen, geactiveerde IPSec XFRM-regels, ongeldig volgnummer TCP, enz.
    • Het is mogelijk om netwerkpakketten over te dragen van BPF-programma's die zijn gestart vanuit de gebruikersruimte in de BPF_PROG_RUN-modus, waarin BPF-programma's worden uitgevoerd in de kernel, maar het resultaat retourneren naar de gebruikersruimte. Pakketten worden verzonden met behulp van het XDP-subsysteem (eXpress Data Path). De live pakketverwerkingsmodus wordt ondersteund, waarbij de XDP-processor netwerkpakketten direct kan omleiden naar de netwerkstack of naar andere apparaten. Het is ook mogelijk om softwaregeneratoren voor extern verkeer te maken of netwerkframes in de netwerkstack te vervangen.
    • Voor BPF-programma's die aan netwerk-cgroepen zijn gekoppeld, zijn helperfuncties voorgesteld om expliciet de retourwaarde van systeemoproepen in te stellen, wat het mogelijk maakt om completere informatie over de redenen voor het blokkeren van de systeemoproep over te brengen.
    • Het XDP-subsysteem (eXpress Data Path) heeft ondersteuning toegevoegd voor gefragmenteerde pakketten die in meerdere buffers zijn geplaatst, waardoor u Jumbo-frames in XDP kunt verwerken en TSO/GRO (TCP Segmentation Offload/Generic Receiver Offload) kunt gebruiken voor XDP_REDIRECT.
    • Het proces voor het verwijderen van netwerknaamruimten is aanzienlijk versneld, waar veel vraag naar was op sommige grote systemen met een groot verkeersvolume.
  • Uitrusting
    • Het amdgpu-stuurprogramma bevat standaard FreeSync adaptieve synchronisatietechnologie, waarmee u de vernieuwingsfrequentie van informatie op het scherm kunt aanpassen, waardoor u verzekerd bent van vloeiende en scheurvrije beelden tijdens het spelen van games en het bekijken van video's. Aldebaran GPU-ondersteuning is aangekondigd als stabiel.
    • Het i915-stuurprogramma voegt ondersteuning toe voor Intel Alderlake N-chips en Intel DG2-G12 afzonderlijke grafische kaarten (Arc Alchemist).
    • De nieuwe driver biedt ondersteuning voor hogere bitrates voor DP/eDP-interfaces en ondersteuning voor lttprs (Link-Training Tunable PHY Repeaters) kabelverlengers.
    • In het drm-subsysteem (Direct Rendering Manager) in stuurprogramma's armada, exynos, gma500, hyperv, imx, ingenic, mcde, mediatek, msm, omap, rcar-du, rockchip, sprd, sti, tegra, tilcdc, xen en vc4 parameterondersteuning Er is nomodeset toegevoegd, waarmee je het schakelen tussen videomodi op kernelniveau en het gebruik van hardware-renderingversnellingstools kunt uitschakelen, waardoor alleen functionaliteit overblijft die verband houdt met de systeemframebuffer.
    • Ondersteuning toegevoegd voor ARM SoС Qualcomm Snapdragon 625/632 (gebruikt in LG Nexus 5X en Fairphone FP3 smartphones), Samsung Exynos 850, Samsung Exynos 7885 (gebruikt in Samsung Galaxy A8), Airoha (Mediatek/EcoNet) EN7523, Mediatek mt6582 (Prestigio PMT5008) tablet 3G), Microchip Lan966, Renesas RZ/G2LC, RZ/V2L, Tesla FSD, TI K3/AM62 en i.MXRTxxxx.
    • Ondersteuning toegevoegd voor ARM-apparaten en boards van Broadcom (Raspberry Pi Zero 2 W), Qualcomm (Google Herobrine R1 Chromebook, SHIFT6mq, Samsung Galaxy Book2), Rockchip (Pine64 PineNote, Bananapi-R2-Pro, STM32 Emtrion emSBS, Samsung Galaxy Tab S , Prestigio PMT5008 3G-tablet), Allwinner (A20-Marsboard), Amlogic (Amediatek X96-AIR, CYX A95XF3-AIR, Haochuangy H96-Max, Amlogic AQ222 en OSMC Vero 4K+), Aspeed (Quanta S6Q, ASRock ROMED8HM3), Marvell MVEBU / Armada (Ctera C200 V1 en V2 NAS), Mstar (DongShanPiOne, Miyoo Mini), NXP i.MX (Protonic PRT8MM, emCON-MX8M Mini, Toradex Verdin, Gateworks GW7903).
    • Ondersteuning toegevoegd voor geluidssystemen en codecs AMD PDM, Atmel PDMC, Awinic AW8738, i.MX TLV320AIC31xx, Intel CS35L41, ESSX8336, Mediatek MT8181, nVidia Tegra234, Qualcomm SC7280, Renesas RZ/V2L, Texas Instruments TAS585M. Eerste implementatie van geluidsdriver voor Intel AVS DSP-chip toegevoegd. Bijgewerkte driverondersteuning voor Intel ADL en Tegra234, en wijzigingen aangebracht om de audio-ondersteuning op Dell-, HP-, Lenovo-, ASUS-, Samsung- en Clevo-apparaten te verbeteren.

    Tegelijkertijd vormde de Latin American Free Software Foundation een versie van de volledig vrije kernel 5.18 - Linux-libre 5.18-gnu, ontdaan van elementen van de firmware en stuurprogramma's die niet-vrije componenten of codesecties bevatten, waarvan de reikwijdte beperkt is door de fabrikant. De nieuwe release reinigt stuurprogramma's voor MIPI DBI-panelen, VPU Amphion, WiFi MediaTek MT7986 WMAC, Mediatek MT7921U (USB) en Realtek 8852a/8852c, Intel AVS en Texas Instruments TAS5805M geluidschips. DTS-bestanden werden ook opgeschoond voor verschillende Qualcomm SoC's met processors gebaseerd op de AArch64-architectuur. Bijgewerkte blob-opschoningscode in stuurprogramma's en subsystemen van AMD GPU, MediaTek MT7915, Silicon Labs WF200+ WiFi, Mellanox Spectru Ethernet, Realtek rtw8852c, Qualcomm Q6V5, Wolfson ADSP, MediaTek HCI UART.

Bron: opennet.ru

Voeg een reactie