A Linux 6.18 kernel egyik fontos ága az IOMMU (Input-Output Memory Management Unit) alrendszer továbbfejlesztése, amelyet Joerg Roedel küldött be Linus Torvaldsnak a beolvasztási időablak keretében. A frissítés több platformot érint, köztük az Intel VT-d, az AMD-Vi, az Apple DART és a RISC-V architektúrákat. A fejlesztések célja a kompatibilitás, a stabilitás és a biztonság növelése, valamint az új hardverek támogatása. A változások alapját a 6.17-rc7 kernel verzió adja, és a beolvasztott kód jelentős mértékben bővíti az IOMMU funkcionalitását.
Tartalomjegyzék

Architektúraspecifikus fejlesztések
Az Intel VT-d illesztőprogramja a legújabb VT-d specifikációhoz igazodik, és több optimalizálást is tartalmaz, például a PRS (Page Request Service) letiltását, ha a PDS (Page Directory Support) nem érhető el, valamint a hibás oldaltáblák megjelenítésének javítását a debugfs rendszeren keresztül. Emellett kisebb kódoptimalizálások és biztonsági kódtisztítások is történtek. Az AMD-Vi alrendszer mostantól támogatja a kdump indítást Secure Nested Paging (SNP) engedélyezett állapotban, ami jelentős lépés a rendszermegbízhatóság növelése felé. Az Apple DART esetében a legfontosabb fejlesztés a négyszintű oldaltábla-támogatás bevezetése, amely a modern Apple lapkák memóriakezelését teszi hatékonyabbá. A RISC-V platform pedig új ACPI-támogatást kapott, beleértve a RIMT (RISC-V IOMMU Table) bevezetését, amely egységesíti az IOMMU eszközök azonosítását és inicializálását a rendszerindítás során.
Kódkarbantartás és architektúraközi egységesítés a kernel IOMMU alrendszerében
A kernel beolvasztás több mint kilencszáz sor kódbővítést és közel kétszáz sor törlést tartalmaz. Létrejött több új forrásfájl is, köztük a drivers/acpi/riscv/rimt.c, amely a RISC-V IOMMU ACPI-integráció alapját képezi. A kód frissítése érinti az AMD, Intel, Apple és OMAP illesztőprogramokat, továbbá módosítja a debugfs, az io-pgtable és az ACPI modulok működését a kernelben. A fejlesztések között szerepel a snprintf hívások cseréje scnprintf formára a biztonságosabb karakterlánc-kezelés érdekében, valamint a str_plural() függvény alkalmazása a kód egyszerűsítésére. Ezek a módosítások nemcsak karbantarthatóbbá, hanem konzisztenssé is teszik az IOMMU alrendszer implementációját a különböző architektúrák között.
