{"id":28481,"date":"2026-09-25T00:31:32","date_gmt":"2026-09-24T16:31:32","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-93217"},"modified":"2026-09-25T00:31:32","modified_gmt":"2026-09-24T16:31:32","slug":"cve-2026-93217","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-93217","title":{"rendered":"CVE-2026-93217 &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nmm\/madvise: skip devi"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>mm\/madvise: skip device-private PMDs in cold and pageout walks<\/p>\n<p>madvise_cold_or_pageout_pte_range() takes pmd_trans_huge_lock(), whose<br \/>\npmd_is_huge() check returns true for a device-private PMD.  The subsequent<br \/>\n!pmd_present() branch has a VM_BUG_ON() asserting migration is the only<br \/>\nallowed non-present case; a device-private PMD trips it.<\/p>\n<p>Skip device-private PMDs in that non-present branch and continue to<br \/>\nhuge_unlock before calling pmd_folio().  Downgrade the check to<br \/>\nVM_WARN_ON_ONCE() so an unexpected PMD softleaf logs a warning rather than<br \/>\npanicking.  Drop the thp_migration_supported() guard: it expands to<br \/>\nIS_ENABLED(CONFIG_ARCH_SUPPORTS_PMD_SOFTLEAF), and both<br \/>\npmd_is_migration_entry() and pmd_is_device_private_entry() already return<br \/>\nfalse when that config is not selected, so the guard suppresses only the<br \/>\ncase where the warning would already be silent.<\/p>\n<p>Potential trigger: an HMM-based GPU driver races with<br \/>\nmadvise(MADV_COLD)\/MADV_PAGEOUT: pmd_trans_huge(*pmd) reads true, then<br \/>\nmigrate_vma_pages() flips the PMD to a device-private entry before the PMD<br \/>\nlock is acquired.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>mm\/madvise: skip device-private PMDs in cold and pageout walks<\/p>\n<p>madvise_cold_or_pageout_pte_range() takes pmd_trans_huge_lock(), wh<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-28481","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/28481","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln"}],"about":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/types\/vuln"}],"wp:attachment":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=28481"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=28481"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=28481"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}