{"id":21443,"date":"2026-09-12T04:31:11","date_gmt":"2026-09-11T20:31:11","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-89521"},"modified":"2026-09-12T04:31:11","modified_gmt":"2026-09-11T20:31:11","slug":"cve-2026-89521","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-89521","title":{"rendered":"CVE-2026-89521 &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nsched\/core: Handle pi"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>sched\/core: Handle pick_task() releasing the rq lock<\/p>\n<p>Core scheduling&#8217;s pick_next_task() breaks when a -&gt;pick_task()<br \/>\nimplementation can release the rq lock. The selection state derived on entry<br \/>\nis only valid while the lock is held continuously. Once a pick can drop the<br \/>\nlock, an interleaving selection can invalidate all of it: the single-CPU<br \/>\nfast path can commit an uncookied pick although the core went cookied during<br \/>\nthe release, and forceidle committed by the interleaving selection skews the<br \/>\nrestarted pass&#8217;s accounting.<\/p>\n<p>Fix it by restarting the whole selection when a pick returns RETRY_TASK<br \/>\nafter releasing the lock: a single restart point above the state derivation<br \/>\nreplaces the per-loop restart labels, so a retry picks up state committed by<br \/>\ninterleaving selections and accounts and resets forceidle like a fresh<br \/>\nselection would.<\/p>\n<p>need_sync and fi_before latch across retries. Clock validity can&#8217;t be<br \/>\nre-derived &#8211; there is no program-ordered way to tell whether the own and<br \/>\ncore rq clocks are still updated after the lock was released, as other<br \/>\nlockers&#8217; pin cycles may or may not have invalidated them. When restarting,<br \/>\nclear core_clock_updated so that the sibling loop re-updates the core rq,<br \/>\nand update the own rq clock if invalidated.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>sched\/core: Handle pick_task() releasing the rq lock<\/p>\n<p>Core scheduling&#8217;s pick_next_task() breaks when a -&gt;pick_task()<br \/>\nimplementation<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-21443","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/21443","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=21443"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=21443"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=21443"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}