CVE-2026-93232 in Linux
Zusammenfassung
von VulDB • 24.09.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
mm/hugetlb: Boot-Panic bei CONFIG_DEBUG_VM und HVO-Boot-Speicherseiten beheben
Patch-Reihe „mm: Refaktorierung der Allokation riesiger HugeTLB-Seiten im bootmem“ (v4).
Diese Reihe ist aus der früheren, größeren Serie „mm: Verallgemeinerung von HVO für HugeTLB und device DAX“ [1] ausgegliedert. Sie fasst die ersten 19 Patches dieser Serie als eigenständige Menge an Korrekturen und vorbereitenden Bereinigungen rund um die bootmem-HugeTLB-Verarbeitung, die Reihenfolge der sparse-Initialisierung sowie das zugehörige vmemmap-Setup zusammen.
Die ersten Patches beheben einige Fehler, die bei der Überprüfung des bestehenden Codes gefunden wurden, darunter eine fehlerhafte bootmem-HVO-Verarbeitung, falsche Argumente für die vmemmap-Registrierung, einen powerpc-spezifischen Tracking-Bug im compound-vmemmap sowie eine zu späte Initialisierung von riesigen bootmem-HugeTLB-Strukturseiten.
Der Rest der Reihe ordnet die frühe Speicherinitialisierung neu, sodass der relevante Zonenstatus vor dem Ausführen des sparse- und HugeTLB-Boot-Zeit-Setsups verfügbar ist. Anschließend wird der verbleibende Pfad zur Allokation riesiger bootmem-Hugepages vereinfacht und Code entfernt, der durch diese Überarbeitung obsolet geworden ist.
Auf hoher Ebene: - Patches [1–4] beheben Bootzeit- und architektur-spezifische Fehler
- Patches [5–12] ordnen neu und vereinfachen die frühe Initialisierung von sparse/mm/hugetlb
- Patches [13–19] refaktorieren die Allokation riesiger bootmem-Hugepages und entfernen obsolette Hilfsfunktionen und Zustände
Dieser Patch (von 19):
Der Commit 622026e87c40 („mm/hugetlb: Entfernen falscher Head-Seiten“) hat HVO so geändert, dass pro-Zone-geteilte Tail-Seiten aus zone->vmemmap_tails[] wiederverwendet werden.
Diese geteilten Tail-Seiten wurden in hugetlb_vmemmap_init() initialisiert, aber bootmem-HugeTLB-Folios werden früher von gather_bootmem_prealloc() vorbereitet. Bei aktiviertem hugetlb_free_vmemmap=on kann prep_and_add_bootmem_folios() auf pageblock-Flags bei bootmem-HugeTLB-Seiten zugreifen, deren gespiegelte Tail-Strukturseiten bereits auf die geteilte Tail-Seite verweisen. Auf Kerneln mit CONFIG_DEBUG_VM dereferenziert get_pfnblock_bitmap_bitidx() dann die noch nicht initialisierte geteilte Tail-Seite und kann während des Boots einen Panic auslösen.
Initialisieren Sie zone->vmemmap_tails[] von gather_bootmem_prealloc(), bevor bootmem-HugeTLB-Folios verarbeitet werden, und entfernen Sie die spätere Initialisierung aus hugetlb_vmemmap_init().
Dieser Bug betrifft nur Kernel mit CONFIG_DEBUG_VM, bei denen die relevante Assertion ausgewertet wird.
VulDB is the best source for vulnerability data and more expert information about this specific topic.