CVE-2024-46839 in Linuxinfo

Zusammenfassung

von VulDB • 14.05.2026

Im Linux-Kernel wurde folgende Schwachstelle behoben:

workqueue: Skalierbarkeit des workqueue-Watchdog-Touchs verbessern

Auf einem PowerPC-System mit ~2000 CPUs wurden Hard-Lockups im workqueue-Code beobachtet, wenn stop_machine ausgeführt wird (in diesem Fall aufgrund von CPU-Hotplug). Dies liegt daran, dass viele CPUs in multi_cpu_stop im Leerlauf verharren und touch_nmi_watchdog() aufrufen, was letztendlich wq_watchdog_touch() aufruft. wq_watchdog_touch() schreibt auf die globale Variable wq_watchdog_touched, die sich in derselben Cacheline wie andere wichtige workqueue-Daten befinden kann, was die Vorgänge bis hin zu Lockups verlangsamt.

Im Fall der folgenden gekürzten Trace-Ausgabe befand sich worker_pool_idr in der Hotline, was dazu führte, dass die Lockups stets bei idr_find auftraten.

watchdog: CPU 1125 selbst erkannten 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) bei multi_cpu_stop multi_cpu_stop cpu_stopper_thread smpboot_thread_fn kthread

Dies wird behoben, indem wq_watchdog_touch() nur dann schreibt, wenn die Zeit seit dem letzten aufgezeichneten Touch mehr als 1/4 der Watchdog-Schwelle beträgt.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

Zuständig

Linux

Reservieren

11.09.2024

Veröffentlichung

27.09.2024

Moderieren

zurückgezogen

Eintrag

VDB-278716

CPE

bereit

EPSS

0.00000

KEV

nein

Aktivitäten

very low

Quellen

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!