CVE-2024-36000

mm/hugetlb: fix missing hugetlb_lock for resv uncharge

published May 20, 2024

CVSS
—
EPSS
0%
Percentile
12.4
In the wild
Unconfirmed
What it is

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

mm/hugetlb: fix missing hugetlb_lock for resv uncharge

There is a recent report on UFFDIO_COPY over hugetlb:

https://lore.kernel.org/all/[email protected]/

350: lockdep_assert_held(&hugetlb_lock);

Should be an issue in hugetlb but triggered in an userfault context, where

it goes into the unlikely path where two threads modifying the resv map

together. Mike has a fix in that path for resv uncharge but it looks like

the locking criteria was overlooked: hugetlb_cgroup_uncharge_folio_rsvd()

will update the cgroup pointer, so it requires to be called with the lock

held.

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.00225 · 12.4th percentile
Published
2024-05-20T09:48Z
EPSS history
Timeline
  • 20 MAY 09:48Z
    mm/hugetlb: fix missing hugetlb_lock for resv uncharge
    cvelistv5