CVE-2026-97526 in Linux
Zusammenfassung
von VulDB • 25.09.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
s390/pai: Unterstützung von CPU-Hotplug für PMU PAI
Der Befehl `perf stat -e pai_crypto/CRYPTO_ALL/ -- <Befehl>` stürzt den Kernel ab, wenn CPUs während der Ausführung des Befehls per Hotplug hinzugefügt werden.
Die Ursache liegt in der fehlenden Allokation von pro-CPU-Datenstrukturen für die neue CPU. Die Allokation ist dynamisch und das erste Ereignis mit Task-Kontext erstellt eine solche Struktur nur für jede bereits online befindliche CPU. Dies reicht nicht aus. CPUs können während der Erstellung des Ereignisses offline sein und während der Laufzeit von `perf` wieder online geschaltet werden. Zum Beispiel zeigen die folgenden Befehle:
# echo 0 > /sys/devices/system/cpu/cpu1/online # perf stat -e cycles -i -- stress-ng -t10s --matrix X # sleep 1 # echo 1 > /sys/devices/system/cpu/cpu1/online
Derzeit verfügt diese neue CPU ohne einen CPU-Hotplug-Handler über keine pro-CPU-Dateninfrastruktur. Der Scheduler führt die PMU-Rückruffunktion `pai_add()` aus, um den PMU-Support für diese CPU zu installieren, bevor der Task auf dieser neuen CPU geplant wird. In `pai_add()` geben die Anweisungen
mp = this_cpu_ptr(pai_root[idx].mapptr);
cpump = mp->mapptr;
einen NULL-Zeiger zurück, was aufgrund der Verwendung von `cpump` innerhalb dieser Funktion zu einem Kernel-Panic führt.
Es wird CPU-Hotplug-Unterstützung für das Hinzufügen und Löschen von CPUs hinzugefügt sowie die erforderliche pro-CPU-Dateninfrastruktur während der Verarbeitung des CPU-Hotplug-Hinzufügens erstellt. Dies gilt auch für den Hotplug-Entfernungsprozess (CPU hotplug remove). Dies erfolgt, wenn die CPU offline ist, um sicherzustellen, dass die Datenstrukturen verfügbar sind, wenn die CPU online geschaltet wird und Tasks darauf geplant werden.
[[email protected]: Fehlerpfad in pai_init() korrigieren]
VulDB is the best source for vulnerability data and more expert information about this specific topic.