{"id":24648,"date":"2026-09-16T20:32:35","date_gmt":"2026-09-16T12:32:35","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-89961"},"modified":"2026-09-16T20:32:35","modified_gmt":"2026-09-16T12:32:35","slug":"cve-2026-89961","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-89961","title":{"rendered":"CVE-2026-89961 &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\npowerpc\/mm: fix wrong"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>powerpc\/mm: fix wrong addr_pfn tracking in compound vmemmap population<\/p>\n<p>vmemmap_populate_compound_pages() uses addr_pfn to determine the PFN<br \/>\noffset within a compound page and to decide whether the current vmemmap<br \/>\nslot should be populated as a head page mapping or should reuse a tail<br \/>\npage mapping.<\/p>\n<p>However, addr_pfn is advanced manually in parallel with addr.  The loop<br \/>\nitself progresses in vmemmap address space, so each PAGE_SIZE step in addr<br \/>\ncovers PAGE_SIZE \/ sizeof(struct page) struct page slots.  Since addr_pfn<br \/>\nis compared against nr_pages in data-PFN units, it should advance by the<br \/>\nsame number of PFNs.  The existing manual increments do not match that and<br \/>\ntherefore do not reliably track the PFN corresponding to the current addr.<\/p>\n<p>As a result, pfn_offset can be computed from the wrong PFN and the code<br \/>\ncan make the head\/tail decision for the wrong compound-page position.<\/p>\n<p>Fix this by deriving addr_pfn directly from the current vmemmap address<br \/>\ninstead of carrying it as loop state.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>powerpc\/mm: fix wrong addr_pfn tracking in compound vmemmap population<\/p>\n<p>vmemmap_populate_compound_pages() uses addr_pfn to determin<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-24648","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/24648","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=24648"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=24648"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=24648"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}