CVE Database
/

CVE-2024-35895

Back to search

CVE-2024-35895

Published: May 19, 2024

Modified: May 12, 2026

PUBLISHED

Description

In the Linux kernel, the following vulnerability has been resolved: bpf, sockmap: Prevent lock inversion deadlock in map delete elem syzkaller started using corpuses where a BPF tracing program deletes elements from a sockmap/sockhash map. Because BPF tracing programs can be invoked from any interrupt context, locks taken during a map_delete_elem operation must be hardirq-safe. Otherwise a deadlock due to lock inversion is possible, as reported by lockdep: CPU0 CPU1 ---- ---- lock(&htab->buckets[i].lock); local_irq_disable(); lock(&host->lock); lock(&htab->buckets[i].lock); <Interrupt> lock(&host->lock); Locks in sockmap are hardirq-unsafe by design. We expects elements to be deleted from sockmap/sockhash only in task (normal) context with interrupts enabled, or in softirq context. Detect when map_delete_elem operation is invoked from a context which is _not_ hardirq-unsafe, that is interrupts are disabled, and bail out with an error. Note that map updates are not affected by this issue. BPF verifier does not allow updating sockmap/sockhash from a BPF tracing program today.

VendorProductVersions

Linux

Linux

affected
604326b41a6fb9b4a78b6179335decee0365cd8c - < f7990498b05ac41f7d6a190dc0418ef1d21bf058
affected
604326b41a6fb9b4a78b6179335decee0365cd8c - < dd54b48db0c822ae7b520bc80751f0a0a173ef75
affected
604326b41a6fb9b4a78b6179335decee0365cd8c - < d1e73fb19a4c872d7a399ad3c66e8ca30e0875ec
affected
604326b41a6fb9b4a78b6179335decee0365cd8c - < a44770fed86515eedb5a7c00b787f847ebb134a5
affected
604326b41a6fb9b4a78b6179335decee0365cd8c - < 668b3074aa14829e2ac2759799537a93b60fef86

+2 more versions

Linux

Linux

affected
4.20
unaffected
0 - < 4.20
unaffected
5.4.274 - <= 5.4.*
unaffected
5.10.215 - <= 5.10.*
unaffected
5.15.154 - <= 5.15.*

+4 more versions

Security Training

Train your team to recognize and prevent security threats with our comprehensive security awareness program.

Start Training

Vulnerability Scanning

Discover vulnerabilities in your applications and infrastructure before attackers do.

Scan Now