<?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://db.gcve.eu/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-11-03T13:09:37.988834+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>info@gcve.eu</email>
  </author>
  <link href="https://db.gcve.eu" 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://db.gcve.eu/vuln/cve-2026-98818</id>
    <title>CVE-2026-98818 — mm/slab: do not wake up kswapd in __kfree_rcu_sheaf()</title>
    <updated>2026-11-03T13:09:38.000945+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/slab: do not wake up kswapd in __kfree_rcu_sheaf()</p>
<p>Since kfree_rcu() can be called under pi_lock (a raw spinlock in the
scheduler), kfree_rcu() itself should never allocate memory with
__GFP_KSWAPD_RECLAIM as waking up kswapd ends up acquiring pi_lock,
which leads to a deadlock.</p>
<p>Reproducing the issue even intentionally was not straightforward.
The set_cpus_allowed_force() path that is called under pi_lock is
exercised very rarely, and competing tasks that allocate memory will
most likely wake kswapd up.</p>
<p>Therefore the existence of the deadlock was verified with a modified
kernel that has a lockdep map for waking up kswapd:</p>
<p>======================================================
  WARNING: possible circular locking dependency detected
  7.2.0-rc1-slab-for-next+ #10 Not tainted
  ------------------------------------------------------
  git/6660 is trying to acquire lock:
  ffff8e524533c550 (&amp;p-&gt;pi_lock){-.-.}-{2:2}, at: _raw_spin_lock_irqsave+0x12/0x20</p>
<p>but task is already holding lock:
  ffff8e57bffff1a0 (&amp;pgdat-&gt;kswapd_wait){....}-{3:3}, at: _raw_spin_lock_irqsave+0x12/0x20</p>
<p>which lock already depends on the new lock.</p>
<p>the existing dependency chain (in reverse order) is:</p>
<p>-&gt; #2 (&amp;pgdat-&gt;kswapd_wait){....}-{3:3}:
         __lock_acquire+0x5a4/0xc50
         lock_acquire.part.0+0xb7/0x240
         lock_acquire+0x70/0x170
         __raw_spin_lock_irqsave+0x44/0x80
         _raw_spin_lock_irqsave…</p></div>
    </content>
    <link href="https://db.gcve.eu/vuln/cve-2026-98818"/>
  </entry>
</feed>
