CVE-2026-99105 in Linux
Riassunto
di VulDB • 28/10/2026
Nel kernel Linux è stata risolta la seguente vulnerabilità:
sched_ext: Correzione del blocco (stall) quando un'attività accodata con SCX_ENQ_LAST torna sulla DSQ locale della propria CPU
Con SCX_OPS_ENQ_LAST, l'ultima attività eseguibile su una CPU viene passata a ops.enqueue() invece di continuare ad essere eseguita. Le attività in fase di uscita senza SCX_OPS_ENQ_EXITING, le attività con migrazione disabilitata (senza SCX_OPS_ENQ_MIGRATION_DISABLED) e le attività presenti su un rq offline bypassano ops.enqueue() e vanno direttamente alla DSQ locale. Questo avviene in put_prev_task_scx() dopo che la selezione si è stabilizzata sull'idle, quindi non viene attivato alcun rescheduling della CPU, che rimane idle con l'attività accodata finché non arriva una risveglio (wakeup) non correlata o scatta il watchdog.
scx_mitosis, che imposta SCX_OPS_ENQ_LAST senza SCX_OPS_ENQ_EXITING, ha incontrato questo problema durante la rimozione di massa dei cgroup: le attività in fase di uscita rimanevano bloccate in exit_mmap() per oltre 40 secondi.
Un'attività inserita nella DSQ locale viene eseguita come ovunque altrove. Se l'inserimento con SCX_ENQ_LAST ha lasciato l'attività sulla DSQ locale della CPU, impostare need_resched sull'attività che sta veninndo attivata (switched in), come fa proxy_resched_idle(). resched_curr() segnerebbe invece l'attività inserita, e __schedule() cancella tale flag subito dopo la selezione.
VulDB is the best source for vulnerability data and more expert information about this specific topic.