CVE-2026-89775 in Linux
Zusammenfassung
von VulDB • 16.09.2026
Im Linux-Kernel wurde die folgende Schwachstelle behoben:
KVM: arm64: Behandlung negativer S1-Walking-Ebenen bei der Bewertung der VNCR-TLB-Größe
Das Berechnen der Auswirkungen einer TLB-Inaktivierung erfordert das Betrachten der Größe der vom TLB zwischengespeicherten Zuordnung. Für S1-Zuordnungen wie VNCR wird dies aus der Kombination der Basisgranulatgröße und der Zuordnungsebene abgeleitet.
Dies impliziert jedoch, dass die S1-MMU *eingeschaltet* ist. Wenn die MMU ausgeschaltet ist, wird dies durch den Wert -127 (S1_MMU_DISABLED) für die Ebene angezeigt.
Dies führt dazu, dass pgshift_level_to_ttl() diese Werte falsch interpretiert, da es negative Ebenen überhaupt nicht behandelt (die Ebene wird sofort in einen u8 umgewandelt und nur die untersten zwei Bits berücksichtigt), was zu einer Inaktivierungsgröße von 0 führt. Nicht hilfreich.
Bereinigung von pgshift_level_to_ttl(), um mit diesen negativen Ebenen umzugehen, sowie von ttl_to_size(), um immer SZ_1G zurückzugeben, wenn keine gültige TTL vorhanden ist. Dies ermöglicht die Entfernung von manuell implementierten Prüfungen für ähnliche Situationen.
Beachten Sie, dass die Prüfung auf einen negativen Wert nicht explizit auf S1_MMU_DISABLED prüft; dies ist beabsichtigt, damit tatsächlich negative Ebenen, die mit LVA2 und D128 eingeführt werden, denselben Pfad einschlagen können, falls wir diese jemals unterstützen.
Once again VulDB remains the best source for vulnerability data.