{"id":21640,"date":"2026-09-12T04:31:27","date_gmt":"2026-09-11T20:31:27","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-89718"},"modified":"2026-09-12T04:31:27","modified_gmt":"2026-09-11T20:31:27","slug":"cve-2026-89718","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-89718","title":{"rendered":"CVE-2026-89718 &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nzram: fix out-of-boun"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>zram: fix out-of-bounds access in writeback_store()<\/p>\n<p>Patch series &#8220;zram: fix stale scan bounds after reinitialization&#8221;.<\/p>\n<p>Both writeback_store() and read_block_state() derive their table scan<br \/>\nbounds from zram-&gt;disksize before acquiring dev_lock.  If the device is<br \/>\nreset and reinitialized with a smaller disksize between that read and lock<br \/>\nacquisition, the bound can describe the old table while the scan operates<br \/>\non the new one.  This can lead to out-of-bounds slot accesses.<\/p>\n<p>Move both bound calculations under dev_lock so each bound remains<br \/>\nconsistent with the table throughout its scan.  Keep the fixes separate<br \/>\nbecause the affected interfaces originate from different commits and can<br \/>\nbe backported independently.<\/p>\n<p>This patch (of 2):<\/p>\n<p>writeback_store() calculates the table scan bounds before taking dev_lock.<br \/>\nA reset followed by reconfiguration with a smaller disksize can therefore<br \/>\nreplace zram-&gt;table while writeback_store() is waiting for the lock.  Once<br \/>\nit acquires the lock, it sees an initialized device but scans the new<br \/>\ntable using the old upper bound, resulting in an out-of-bounds access.<\/p>\n<p>Calculate the number of pages while holding dev_lock so the scan bound<br \/>\nmatches the table protected by the lock.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>zram: fix out-of-bounds access in writeback_store()<\/p>\n<p>Patch series &#8220;zram: fix stale scan bounds after reinitialization&#8221;.<\/p>\n<p>Both write<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-21640","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/21640","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=21640"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=21640"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=21640"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}