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-03-13T07:56:07.167732Z
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
{
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/40xxx/CVE-2024-40995.json"
}
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"