CVE-2024-40995

Source
https://cve.org/CVERecord?id=CVE-2024-40995
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2024-40995.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2024-40995
Downstream
Related
Published
2024-07-12T12:37:37.791Z
Modified
2026-05-28T03:55:33.254209073Z
Summary
net/sched: act_api: fix possible infinite loop in tcf_idr_check_alloc()
Details

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

net/sched: actapi: fix possible infinite loop in tcfidrcheckalloc()

syzbot found hanging tasks waiting on rtnl_lock [1]

A reproducer is available in the syzbot bug.

When a request to add multiple actions with the same index is sent, the second request will block forever on the first request. This holds rtnl_lock, and causes tasks to hang.

Return -EAGAIN to prevent infinite looping, while keeping documented behavior.

[1]

INFO: task kworker/1:0:5088 blocked for more than 143 seconds. Not tainted 6.9.0-rc4-syzkaller-00173-g3cdb45594619 #0 "echo 0 > /proc/sys/kernel/hungtasktimeoutsecs" disables this message. task:kworker/1:0 state:D stack:23744 pid:5088 tgid:5088 ppid:2 flags:0x00004000 Workqueue: eventspowerefficient regcheckchanswork Call Trace: <TASK> context_switch kernel/sched/core.c:5409 [inline] __schedule+0xf15/0x5d00 kernel/sched/core.c:6746 __scheduleloop kernel/sched/core.c:6823 [inline] schedule+0xe7/0x350 kernel/sched/core.c:6838 schedulepreempt_disabled+0x13/0x30 kernel/sched/core.c:6895 __mutexlockcommon kernel/locking/mutex.c:684 [inline] __mutexlock+0x5b8/0x9c0 kernel/locking/mutex.c:752 wiphylock include/net/cfg80211.h:5953 [inline] regleaveinvalidchans net/wireless/reg.c:2466 [inline] regcheckchanswork+0x10a/0x10e0 net/wireless/reg.c:2481

Database specific
{
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/40xxx/CVE-2024-40995.json",
    "cna_assigner": "Linux"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
0190c1d452a91c38a3462abdd81752be1b9006a8
Fixed
0d8a2d287c8a394c0d4653f0c6c7be4c688e5a74
Fixed
c6a7da65a296745535a964be1019ec7691b0cb90
Fixed
25987a97eec4d5f897cd04ee1b45170829c610da
Fixed
6fc78d67f51aeb9a542d39a8714e16bc411582d4
Fixed
5f926aa96b08b6c47178fe1171e7ae331c695fc2
Fixed
7a0e497b597df7c4cf2b63fc6e9188b6cabe5335
Fixed
d864319871b05fadd153e0aede4811ca7008f5d6

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2024-40995.json"

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
4.19.0
Fixed
5.4.279
Type
ECOSYSTEM
Events
Introduced
5.5.0
Fixed
5.10.221
Type
ECOSYSTEM
Events
Introduced
5.11.0
Fixed
5.15.162
Type
ECOSYSTEM
Events
Introduced
5.16.0
Fixed
6.1.96
Type
ECOSYSTEM
Events
Introduced
6.2.0
Fixed
6.6.36
Type
ECOSYSTEM
Events
Introduced
6.7.0
Fixed
6.9.7

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2024-40995.json"