bpf: avoid holding freeze_mutex during mmap operation (Linux Linux)

CVE-2025-21853
MEDIUM 5.5

At a glance

Source
NVD
EPSS
EPSS 0.25 % · percentile 16 ()
State
PUBLISHED
Published
Updated
Assigner
Linux
NVD status
Modified

Description

In the Linux kernel, the following vulnerability has been resolved: bpf: avoid holding freeze_mutex during mmap operation We use map->freeze_mutex to prevent races between map_freeze() and memory mapping BPF map contents with writable permissions. The way we naively do this means we'll hold freeze_mutex for entire duration of all the mm and VMA manipulations, which is completely unnecessary. This can potentially also lead to deadlocks, as reported by syzbot in [0]. So, instead, hold freeze_mutex only during writeability checks, bump (proactively) "write active" count for the map, unlock the mutex and proceed with mmap logic. And only if something went wrong during mmap logic, then undo that "write active" counter increment. [0] https://lore.kernel.org/bpf/678dcbc9.050a0220.303755.0066.GAE@google.com/

References

Scores

VersionScoreVectorScored by
CVSS 3.1MEDIUM 5.5CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:HNVD · nvd@nist.gov (Primary)

European references

CERT-FR advisories

Affected configurations (NVD CPE)

Affected products

ProductVersions
Linux · Linuxaffected fc9702273e2edb90400a34b3be76f7b08fa3344b < 2ce31c97c219b4fe797749f950274f246eb88c49 ; affected fc9702273e2edb90400a34b3be76f7b08fa3344b < 0d90d9e154144a3a80e9fc0eb9b21b7fc990f68f ; affected fc9702273e2edb90400a34b3be76f7b08fa3344b < 4759acbd44d24a69b7b14848012ec4201d6c5501 ; affected fc9702273e2edb90400a34b3be76f7b08fa3344b < 29cfda62ab4d92ab94123813db49ab76c1e61b29 ; affected fc9702273e2edb90400a34b3be76f7b08fa3344b < d95607a5f2f9bb08194c9deaf4a5f3e8ba59a9d4 ; affected fc9702273e2edb90400a34b3be76f7b08fa3344b < 271e49f8a58edba65bc2b1250a0abaa98c4bfdbe
Linux · Linuxaffected 5.5 ; unaffected 0 < 5.5 ; unaffected 5.10.237 ≤ 5.10.* ; unaffected 5.15.181 ≤ 5.15.* ; unaffected 6.1.135 ≤ 6.1.* ; unaffected 6.6.80 ≤ 6.6.*

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD