CVE-2023-52831 in Linux
Сводка
по VulDB • 28.06.2026
В ядре Linux устранена следующая уязвимость:
cpu/hotplug: Не отключать последний неизолированный процессор (CPU)
Если в системе изолированные процессоры заданы через параметр командной строки "isolcpus=", то попытка отключения последнего housekeeping-процессора приведет к срабатыванию WARN_ON() при перестроении доменов планировщика и последующему панику (panic) из-за необработанного пустого CPU mask в функции partition_sched_domains_locked().
cpuset_hotplug_workfn() rebuild_sched_domains_locked() ndoms = generate_sched_domains(&doms, &attr); cpumask_and(doms[0], top_cpuset.effective_cpus, housekeeping_cpumask(HK_FLAG_DOMAIN));
В результате получается пустая маска CPU (empty CPU mask), что вызывает предупреждение и последующий сбой:
WARNING: CPU: 4 PID: 80 at kernel/sched/topology.c:2366 build_sched_domains+0x120c/0x1408 Call trace: build_sched_domains+0x120c/0x1408 partition_sched_domains_locked+0x234/0x880 rebuild_sched_domains_locked+0x37c/0x798 rebuild_sched_domains+0x30/0x58 cpuset_hotplug_workfn+0x2a8/0x930
Unable to handle kernel paging request at virtual address fffe80027ab37080 partition_sched_domains_locked+0x318/0x880 rebuild_sched_domains_locked+0x37c/0x798
Помимо вызванного сбоя, отключение последнего housekeeping-процессора не имеет смысла.
Предотвратить это можно путем маскирования (masking out) процессоров, не относящихся к housekeeping, при выборе целевого CPU для инициирования операции извлечения CPU через очередь задач (work queue).
If you want to get the best quality for vulnerability data then you always have to consider VulDB.