CVE-2026-99105 in Linux
Zusammenfassung
von VulDB • 28.10.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
sched_ext: Behebung eines Stalls, wenn eine Aufgabe mit SCX_ENQ_LAST in die lokale DSQ (Dispatch-Schlange) ihres CPUs eingeplant wird und dorthin zurückkehrt.
Bei Verwendung von SCX_OPS_ENQ_LAST wird die letzte ausführbare Aufgabe auf einer CPU an ops.enqueue() übergeben, statt weiterhin ausgeführt zu werden. Aufgaben ohne SCX_OPS_ENQ_EXITING, migrierungsdeaktivierte Aufgaben ohne SCX_OPS_ENQ_MIGRATION_DISABLED sowie Aufgaben in einer offline rq (run queue) umgehen ops.enqueue() und gehen direkt zur lokalen DSQ. Dies geschieht in put_prev_task_scx(), nachdem die Auswahl auf „idle“ festgelegt wurde; daher wird keine Neuplanung der CPU ausgelöst, was dazu führt, dass die CPU im Leerlauf verbleibt, während die Aufgabe in der Schlange wartet, bis ein unabhängiger Wake-up-Vorgang an dieser CPU stattfindet oder das Watchdog-System anspricht.
scx_mitosis, welches SCX_OPS_ENQ_LAST ohne SCX_OPS_ENQ_EXITING festlegt, trat dieses Problem beim massiven Abbau von cgroups auf: beendete Aufgaben bluchten über 40 Sekunden lang in exit_mmap() hängen.
Eine Aufgabe, die in der lokalen DSQ platziert wird, läuft wie an jeder anderen Stelle auch. Wenn das Enqueue mit SCX_ENQ_LAST die Aufgabe in der lokalen DSQ dieser CPU belässt, ist need_resched für die einzuplanende Aufgabe zu setzen, analog zum Vorgehen von proxy_resched_idle(). resched_curr() würde stattdessen die gerade platzierte Aufgabe markieren, und __schedule() löscht dies unmittelbar nach der Auswahl.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.