In the Linux kernel, the following vulnerability has been resolved:
mm/smaps: fix race between smapshugetlbrange and migration
smapshugetlbrange() handles the pte without holdling ptl, and may be concurrenct with migration, leaing to BUGON in pfnswapentryto_page(). The race is as follows.
smapshugetlbrange migratepages hugeptepget removemigrationptes foliounlock pfnswapentryfolio BUGON
To fix it, hold ptl lock in smapshugetlbrange().
[
{
"id": "CVE-2025-39754-1413d70c",
"target": {
"file": "fs/proc/task_mmu.c"
},
"digest": {
"threshold": 0.9,
"line_hashes": [
"62449101634892231698884900626152782963",
"60696664621067396713044421310986866249",
"78219954068771391897960421016805357442",
"199660116766048149083687405472827481655",
"168818361268604988255995405479890730620",
"108900572908065756603371026257751029016",
"312225608868043405343117783570332586662",
"277058596025010109108262544543067356084",
"130843013057887576710306952347023853110",
"309777157963093028162367114159704358076"
]
},
"deprecated": false,
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@09fc018f48871123ad5dbd7b03c956580232ed76",
"signature_version": "v1"
},
{
"id": "CVE-2025-39754-43c6e5f2",
"target": {
"file": "fs/proc/task_mmu.c",
"function": "smaps_hugetlb_range"
},
"digest": {
"length": 679.0,
"function_hash": "212542611946036787084919169951359574527"
},
"deprecated": false,
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@09fc018f48871123ad5dbd7b03c956580232ed76",
"signature_version": "v1"
},
{
"id": "CVE-2025-39754-450eabc8",
"target": {
"file": "fs/proc/task_mmu.c"
},
"digest": {
"threshold": 0.9,
"line_hashes": [
"62449101634892231698884900626152782963",
"60696664621067396713044421310986866249",
"78219954068771391897960421016805357442",
"199660116766048149083687405472827481655",
"168818361268604988255995405479890730620",
"108900572908065756603371026257751029016",
"312225608868043405343117783570332586662",
"277058596025010109108262544543067356084",
"130843013057887576710306952347023853110",
"309777157963093028162367114159704358076"
]
},
"deprecated": false,
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@45d19b4b6c2d422771c29b83462d84afcbb33f01",
"signature_version": "v1"
},
{
"id": "CVE-2025-39754-c5084678",
"target": {
"file": "fs/proc/task_mmu.c",
"function": "smaps_hugetlb_range"
},
"digest": {
"length": 679.0,
"function_hash": "212542611946036787084919169951359574527"
},
"deprecated": false,
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@45d19b4b6c2d422771c29b83462d84afcbb33f01",
"signature_version": "v1"
}
]