<?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-09-29T21:56:54.098532+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-2026-80719</id>
    <title>CVE-2026-80719 — mm: mglru: fix stale batch updates after memcg reparenting</title>
    <updated>2026-09-29T21:56:54.116135+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> Linux</p>
<p>In the Linux kernel, the following vulnerability has been resolved:</p>
<p>mm: mglru: fix stale batch updates after memcg reparenting</p>
<p>The mglru page table walker batches per-generation size deltas in
walk-&gt;nr_pages while walking page tables without holding the lruvec lock. 
The reset_batch_size() later folds those deltas into walk-&gt;lruvec under
the lruvec lock.</p>
<p>The page table walker can run concurrently with the memcg reparenting path
as follows:</p>
<p>CPU0                           CPU1
====                           ====</p>
<p>walk_mm
--&gt; walk_page_range
    --&gt; update_batch_size
        --&gt; walk-&gt;nr_pages += delta</p>
<p>mem_cgroup_css_offline
                              --&gt; memcg_reparent_objcgs
                                  --&gt; lock lruvec
                                      lru_gen_reparent_memcg
                                      --&gt; reparent child folios to parent
                                      unlock lruvec</p>
<p>lock lruvec
    reset_batch_size
    --&gt; child lrugen-&gt;nr_pages += delta</p>
<p>This will trigger the following warning in lru_gen_exit_memcg():</p>
<p>VM_WARN_ON_ONCE(memchr_inv(lruvec-&gt;lrugen.nr_pages, 0,
				   sizeof(lruvec-&gt;lrugen.nr_pages)));</p>
<p>And the user-visible impact of underestimated nr_pages in MGLRU was
premature OOMs because MGLRU does not try to reclaim memory when nr_pages
reaches zero, but there are still more pages.</p>
<p>To fix it, make reset_batch_size() check CSS_DYING under RCU before
flushing the pending batch.  A non-dying…</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/cve-2026-80719"/>
  </entry>
</feed>
