{"id":7442,"date":"2026-09-04T18:49:33","date_gmt":"2026-09-04T10:49:33","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-74453"},"modified":"2026-09-04T18:49:33","modified_gmt":"2026-09-04T10:49:33","slug":"cve-2026-74453","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-74453","title":{"rendered":"CVE-2026-74453 [HIGH] &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\ndrm\/vc4: Zero the til"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>drm\/vc4: Zero the tile state data array before each BIN job<\/p>\n<p>The binner BO is a single 16MB buffer split into 512KB slots that are<br \/>\nhanded out to jobs at submission time and recycled as jobs complete,<br \/>\nwithout ever being cleared. Each slot holds the job&#8217;s Tile State Data<br \/>\nArray (TSDA) at its start, followed by the tile allocation pool.<\/p>\n<p>While the tile allocation pool is only walked by the render thread<br \/>\nthrough branches the binner generated during the current job, the<br \/>\nTSDA is the PTB&#8217;s own per-tile bookkeeping and is consumed by the<br \/>\nhardware itself. Although the kernel sets the &#8220;Auto-initialise Tile<br \/>\nState Data Array&#8221; flag in the tile binning mode configuration, the<br \/>\nPTB demonstrably still acts on stale tile state left by the slot&#8217;s<br \/>\nprevious user: the binner ends up creating invalid command streams<br \/>\nwith invalid primitive streams and branches, which can cause GPU hangs<br \/>\nas observed in [1][2].<\/p>\n<p>Zero the TSDA when the job&#8217;s binning slot is configured. This clears<br \/>\n48 bytes per tile (~24KB for a 1080p frame) in the submission path, and<br \/>\nguarantees the PTB never sees another job&#8217;s tile state.<\/p>\n<p>The tile count is only checked for being non-zero today, so the 8-bit<br \/>\nfields it comes from can describe a tile state array almost six times<br \/>\nlarger than the slot it has to live in. Bound it before the slot is<br \/>\nhanded out, since such size decides how much of the slot is left for<br \/>\nthe tile alloc pool.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>drm\/vc4: Zero the tile state data array before each BIN job<\/p>\n<p>The binner BO is a single 16MB buffer split into 512KB slots that are<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-7442","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/7442","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=7442"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=7442"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=7442"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}