<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://vulnerability.circl.lu</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Fri, 02 Oct 2026 16:59:33 +0000</lastBuildDate>
    <item>
      <title>CVE-2026-23036 — btrfs: release path before iget_failed() in btrfs_read_locked_inode()</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2026-23036</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Linux&lt;/p&gt;
&lt;p&gt;In the Linux kernel, the following vulnerability has been resolved:&lt;/p&gt;
&lt;p&gt;btrfs: release path before iget_failed() in btrfs_read_locked_inode()&lt;/p&gt;
&lt;p&gt;In btrfs_read_locked_inode() if we fail to lookup the inode, we jump to
the &amp;#39;out&amp;#39; label with a path that has a read locked leaf and then we call
iget_failed(). This can result in a ABBA deadlock, since iget_failed()
triggers inode eviction and that causes the release of the delayed inode,
which must lock the delayed inode&amp;#39;s mutex, and a task updating a delayed
inode starts by taking the node&amp;#39;s mutex and then modifying the inode&amp;#39;s
subvolume btree.&lt;/p&gt;
&lt;p&gt;Syzbot reported the following lockdep splat for this:&lt;/p&gt;
&lt;p&gt;======================================================
   WARNING: possible circular locking dependency detected
   syzkaller #0 Not tainted
   ------------------------------------------------------
   btrfs-cleaner/8725 is trying to acquire lock:
   ffff0000d6826a48 (&amp;amp;delayed_node-&amp;gt;mutex){+.+.}-{4:4}, at: __btrfs_release_delayed_node+0xa0/0x9b0 fs/btrfs/delayed-inode.c:290&lt;/p&gt;
&lt;p&gt;but task is already holding lock:
   ffff0000dbeba878 (btrfs-tree-00){++++}-{4:4}, at: btrfs_tree_read_lock_nested+0x44/0x2ec fs/btrfs/locking.c:145&lt;/p&gt;
&lt;p&gt;which lock already depends on the new lock.&lt;/p&gt;
&lt;p&gt;the existing dependency chain (in reverse order) is:&lt;/p&gt;
&lt;p&gt;-&amp;gt; #1 (btrfs-tree-00){++++}-{4:4}:
          __lock_release kernel/locking/lockdep.c:5574 [inline]
          lock_release+0x198/0x39c kernel/locking/lockdep.c:5889
          up_read+0x24/0x3c kernel/locking/rws…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Linux&lt;/p&gt;
&lt;p&gt;In the Linux kernel, the following vulnerability has been resolved:&lt;/p&gt;
&lt;p&gt;btrfs: release path before iget_failed() in btrfs_read_locked_inode()&lt;/p&gt;
&lt;p&gt;In btrfs_read_locked_inode() if we fail to lookup the inode, we jump to
the &amp;#39;out&amp;#39; label with a path that has a read locked leaf and then we call
iget_failed(). This can result in a ABBA deadlock, since iget_failed()
triggers inode eviction and that causes the release of the delayed inode,
which must lock the delayed inode&amp;#39;s mutex, and a task updating a delayed
inode starts by taking the node&amp;#39;s mutex and then modifying the inode&amp;#39;s
subvolume btree.&lt;/p&gt;
&lt;p&gt;Syzbot reported the following lockdep splat for this:&lt;/p&gt;
&lt;p&gt;======================================================
   WARNING: possible circular locking dependency detected
   syzkaller #0 Not tainted
   ------------------------------------------------------
   btrfs-cleaner/8725 is trying to acquire lock:
   ffff0000d6826a48 (&amp;amp;delayed_node-&amp;gt;mutex){+.+.}-{4:4}, at: __btrfs_release_delayed_node+0xa0/0x9b0 fs/btrfs/delayed-inode.c:290&lt;/p&gt;
&lt;p&gt;but task is already holding lock:
   ffff0000dbeba878 (btrfs-tree-00){++++}-{4:4}, at: btrfs_tree_read_lock_nested+0x44/0x2ec fs/btrfs/locking.c:145&lt;/p&gt;
&lt;p&gt;which lock already depends on the new lock.&lt;/p&gt;
&lt;p&gt;the existing dependency chain (in reverse order) is:&lt;/p&gt;
&lt;p&gt;-&amp;gt; #1 (btrfs-tree-00){++++}-{4:4}:
          __lock_release kernel/locking/lockdep.c:5574 [inline]
          lock_release+0x198/0x39c kernel/locking/lockdep.c:5889
          up_read+0x24/0x3c kernel/locking/rws…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2026-23036</guid>
    </item>
  </channel>
</rss>
