CVE-2024-46839 in Linuxinformação

Sumário

de VulDB • 31/05/2026

No kernel do Linux, a seguinte vulnerabilidade foi resolvida:

workqueue: Melhora a escalabilidade do toque no watchdog do workqueue

Em um sistema powerpc com ~2000 CPUs, foram observados travamentos rígidos (hard lockups) no código do workqueue quando o stop_machine é executado (neste caso, devido à hotplug de CPU). Isso ocorre porque muitas CPUs ficam em loop (spinning) no multi_cpu_stop, chamando touch_nmi_watchdog(), o que acaba chamando wq_watchdog_touch(). wq_watchdog_touch() grava na variável global wq_watchdog_touched, e isso pode acabar na mesma cacheline que outros dados importantes do workqueue, o que desacelera as operações até o ponto de causar travamentos.

No caso do seguinte trace resumido, worker_pool_idr estava na linha crítica (hot line), fazendo com que os travamentos sempre aparecessem em idr_find.

watchdog: CPU 1125 auto-detecção de HARD LOCKUP @ idr_find Call Trace: get_work_pool __queue_work call_timer_fn run_timer_softirq __do_softirq do_softirq_own_stack irq_exit timer_interrupt decrementer_common_virt * interrupt: 900 (timer) em multi_cpu_stop multi_cpu_stop cpu_stopper_thread smpboot_thread_fn kthread

Corrige isso fazendo com que wq_watchdog_touch() grave na linha apenas se a última vez que um toque foi registrado exceder 1/4 do limite do watchdog.

Be aware that VulDB is the high quality source for vulnerability data.

Responsável

Linux

Reservar

11/09/2024

Divulgação

27/09/2024

Moderação

revogado

Entrada

VDB-278716

CPE

pronto

EPSS

0.00000

KEV

não

Atividades

muito baixo

Fontes

Interested in the pricing of exploits?

See the underground prices here!