CVE-2024-44958 sched/smt: Fix unbalance sched_smt_present dec/inc

Medium 5.5 Published Updated

A logic error in the Linux kernel scheduler causes an unbalanced counter decrement during CPU offline failures, potentially triggering a kernel warning and system instability.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Local or same network only
Victim action needed
Not needed
Fix
Available

What is CVE-2024-44958?

CVE-2024-44958 is a medium-severity denial of service vulnerability in Linux kernel, published on 4 Sep 2024. It can only be exploited from the same machine or local network, with no action from the victim.

Official description

In the Linux kernel, the following vulnerability has been resolved:

sched/smt: Fix unbalance sched_smt_present dec/inc

I got the following warn report while doing stress test:

jump label: negative count! WARNING: CPU: 3 PID: 38 at kernel/jump_label.c:263 static_key_slow_try_dec+0x9d/0xb0 Call Trace: <TASK> __static_key_slow_dec_cpuslocked+0x16/0x70 sched_cpu_deactivate+0x26e/0x2a0 cpuhp_invoke_callback+0x3ad/0x10d0 cpuhp_thread_fun+0x3f5/0x680 smpboot_thread_fn+0x56d/0x8d0 kthread+0x309/0x400 ret_from_fork+0x41/0x70 ret_from_fork_asm+0x1b/0x30 </TASK>

Because when cpuset_cpu_inactive() fails in sched_cpu_deactivate(), the cpu offline failed, but sched_smt_present is decremented before calling sched_cpu_deactivate(), it leads to unbalanced dec/inc, so fix it by incrementing sched_smt_present in the error path.

Which versions are affected by CVE-2024-44958?

It affects 1 product.

Products include Linux kernel.

How do I fix CVE-2024-44958?

Apply the vendor's patch.

Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.

Is CVE-2024-44958 being exploited?

There is no known exploitation of CVE-2024-44958 in the wild and no public exploit code.

All Linux kernel vulnerabilities

Sources

Also known as BELL-CVE-2024-44958, DEBIAN-CVE-2024-44958, GHSA-7m5m-jw3r-vxv2, ROOT-OS-DEBIAN-11-CVE-2024-44958, UBUNTU-CVE-2024-44958.

Is CVE-2024-44958 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free