<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://vulnerability.circl.lu/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-10-02T16:09:47.572921+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>info@circl.lu</email>
  </author>
  <link href="https://vulnerability.circl.lu" rel="alternate"/>
  <generator uri="https://lkiesow.github.io/python-feedgen" version="1.0.0">python-feedgen</generator>
  <subtitle>Contains only the most 10 recent entries.</subtitle>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/cve-2025-71221</id>
    <title>CVE-2025-71221 — dmaengine: mmp_pdma: Fix race condition in mmp_pdma_residue()</title>
    <updated>2026-10-02T16:09:47.613366+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> Linux, Siemens SIMATIC S7-1500 CPU 1518-4 PN/DP MFP, Siemens SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP, Siemens SIPLUS S7-1500 CPU 1518-4 PN/DP MFP</p>
<p>In the Linux kernel, the following vulnerability has been resolved:</p>
<p>dmaengine: mmp_pdma: Fix race condition in mmp_pdma_residue()</p>
<p>Add proper locking in mmp_pdma_residue() to prevent use-after-free when
accessing descriptor list and descriptor contents.</p>
<p>The race occurs when multiple threads call tx_status() while the tasklet
on another CPU is freeing completed descriptors:</p>
<p>CPU 0                              CPU 1
-----                              -----
mmp_pdma_tx_status()
mmp_pdma_residue()
  -&gt; NO LOCK held
     list_for_each_entry(sw, ..)
                                   DMA interrupt
                                   dma_do_tasklet()
                                     -&gt; spin_lock(&amp;desc_lock)
                                        list_move(sw-&gt;node, ...)
                                        spin_unlock(&amp;desc_lock)
  |                                     dma_pool_free(sw) &lt;- FREED!
  -&gt; access sw-&gt;desc &lt;- UAF!</p>
<p>This issue can be reproduced when running dmatest on the same channel with
multiple threads (threads_per_chan &gt; 1).</p>
<p>Fix by protecting the chain_running list iteration and descriptor access
with the chan-&gt;desc_lock spinlock.</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/cve-2025-71221"/>
  </entry>
</feed>
