В ядре Linux устранена следующая уязвимость: sched_ext: Исправить голодание scx_enable() в рамках насыщения справедливого класса Во время s…
В ядре Linux устранена следующая уязвимость: sched_ext: Исправить голодание scx_enable() в рамках насыщения справедливого класса Во время sx_enable(), LEADY -> ENABLED цикл переключения задач изменяет цикл переключения задач вызывая thread sched_class от честного до uxt. Так как ярмарка имеет более высокий Приоритет, чем прежние, насыщенные рабочие нагрузки справедливого класса могут бесконечно голодать Включить нить, повесить систему. Это было введено, когда включенный путь переключился с preempt_disable() на scx_bypass(), который не защищает против голода справедливого класса. Обратите внимание, что оригинал preempt_disable() защита тоже не была завершена - в режимах частичного переключения, вызов Нить все еще может быть голодна после preempt_enable() Перешел на дополнительный класс. Исправьте его, разгрузив впускной корпус на выделенный общесистемный RT (SCHED_FIFO) kthread, который не может быть голодом ни справедливым, ни к экзит-классу задачи. scx_enable() лениво создает пятно при первом использовании и передает ops указатель через struct scx_enable_cmd, содержащую kthread_work, Затем синхронно ждет завершения. Работа работает на другой нити от sch->helper (который работает отключить_рабочить), так что он может безопасно смыть отключение_работа на пути ошибки Без тупика.
| Продукт | Вендор | Статус |
|---|---|---|
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux_kernel | * | Отслеживается |
| kernel-doc-6.12 | Отслеживается | |
| kernel-doc-6.12 | Отслеживается | |
| kernel-doc-6.12 | Отслеживается | |
| kernel-doc-6.18 | Отслеживается | |
| kernel-doc-6.18 | Отслеживается | |
| kernel-headers-6.12 | Отслеживается | |
| kernel-headers-6.12 | Отслеживается | |
| kernel-headers-6.12 | Отслеживается | |
| kernel-headers-6.18 | Отслеживается | |
| kernel-headers-6.18 | Отслеживается | |
| kernel-headers-modules-6.12 | Отслеживается | |
| kernel-headers-modules-6.12 | Отслеживается | |
| kernel-headers-modules-6.12 | Отслеживается | |
| kernel-headers-modules-6.18 | Отслеживается | |
| kernel-headers-modules-6.18 | Отслеживается |