{"id":41064,"date":"2026-10-19T00:31:59","date_gmt":"2026-10-18T16:31:59","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-98592"},"modified":"2026-10-19T00:31:59","modified_gmt":"2026-10-18T16:31:59","slug":"cve-2026-98592","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-98592","title":{"rendered":"CVE-2026-98592 &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nnet: spacemit: clear"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>net: spacemit: clear TX descriptor on fragment mapping failure<\/p>\n<p>emac_tx_mem_map() writes TX_DESC_0_OWN into the ring descriptor for<br \/>\nevery slot beyond old_head as soon as that slot&#8217;s memset()&#8217;d local<br \/>\ncopy is committed with &#8220;*tx_desc_addr = tx_desc&#8221;, i.e. before the<br \/>\nbuffers for that slot have necessarily all been mapped successfully.<br \/>\nIf emac_tx_map_frag() then fails on a later fragment, the err_free_skb<br \/>\npath calls emac_free_tx_buf() to unmap and drop the skb, but leaves<br \/>\nthe already-written descriptor memory untouched, and tx_ring-&gt;head is<br \/>\nnever advanced past old_head (the &#8220;tx_ring-&gt;head = head&#8221; store is<br \/>\nskipped by the goto).<\/p>\n<p>So a slot between old_head and the rolled-back head can be left with<br \/>\nTX_DESC_0_OWN set and buffer_addr_{1,2} pointing at DMA mappings that<br \/>\nemac_free_tx_buf() just tore down, while software considers that slot<br \/>\nfree again. The next successful emac_tx_mem_map() call only rebuilds<br \/>\nold_head itself; if the DMA engine auto-advances into the following<br \/>\ndescriptor once it finishes old_head&#8217;s packet, it will fetch that<br \/>\nstale, already-unmapped address.<\/p>\n<p>emac_tx_clean_desc() already treats emac_free_tx_buf() and clearing<br \/>\nthe descriptor as a pair when reclaiming completed descriptors; do<br \/>\nthe same in the mapping failure path.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>net: spacemit: clear TX descriptor on fragment mapping failure<\/p>\n<p>emac_tx_mem_map() writes TX_DESC_0_OWN into the ring descriptor for<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-41064","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/41064","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=41064"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=41064"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=41064"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}