<?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>Thu, 01 Oct 2026 21:41:44 +0000</lastBuildDate>
    <item>
      <title>CVE-2026-46304 — nvmet: avoid recursive nvmet-wq flush in nvmet_ctrl_free</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2026-46304</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;nvmet: avoid recursive nvmet-wq flush in nvmet_ctrl_free&lt;/p&gt;
&lt;p&gt;nvmet_tcp_release_queue_work() runs on nvmet-wq and can drop the
final controller reference through nvmet_cq_put(). If that triggers
nvmet_ctrl_free(), the teardown path flushes ctrl-&amp;gt;async_event_work on
the same nvmet-wq.&lt;/p&gt;
&lt;p&gt;Call chain:&lt;/p&gt;
&lt;p&gt;nvmet_tcp_schedule_release_queue()
   kref_put(&amp;amp;queue-&amp;gt;kref, nvmet_tcp_release_queue)
     nvmet_tcp_release_queue()
       queue_work(nvmet_wq, &amp;amp;queue-&amp;gt;release_work) &amp;lt;--- nvmet_wq
         process_one_work()
           nvmet_tcp_release_queue_work()
             nvmet_cq_put(&amp;amp;queue-&amp;gt;nvme_cq)
               nvmet_cq_destroy()
                 nvmet_ctrl_put(cq-&amp;gt;ctrl)
                   nvmet_ctrl_free()
                     flush_work(&amp;amp;ctrl-&amp;gt;async_event_work) &amp;lt;--- nvmet_wq&lt;/p&gt;
&lt;p&gt;Previously Scheduled by :-
		        nvmet_add_async_event
		          queue_work(nvmet_wq, &amp;amp;ctrl-&amp;gt;async_event_work);&lt;/p&gt;
&lt;p&gt;This trips lockdep with a possible recursive locking warning.&lt;/p&gt;
&lt;p&gt;[ 5223.015876] run blktests nvme/003 at 2026-04-07 20:53:55
[ 5223.061801] loop0: detected capacity change from 0 to 2097152
[ 5223.072206] nvmet: adding nsid 1 to subsystem blktests-subsystem-1
[ 5223.088368] nvmet_tcp: enabling port 0 (127.0.0.1:4420)
[ 5223.126086] nvmet: Created discovery controller 1 for subsystem nqn.2014-08.org.nvmexpress.discovery for NQN nqn.2014-08.org.nvmexpress:uuid:0f01fb42-9f7f-4856-b0b3-51e60b8de349.
[ 5223.128453]…&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;nvmet: avoid recursive nvmet-wq flush in nvmet_ctrl_free&lt;/p&gt;
&lt;p&gt;nvmet_tcp_release_queue_work() runs on nvmet-wq and can drop the
final controller reference through nvmet_cq_put(). If that triggers
nvmet_ctrl_free(), the teardown path flushes ctrl-&amp;gt;async_event_work on
the same nvmet-wq.&lt;/p&gt;
&lt;p&gt;Call chain:&lt;/p&gt;
&lt;p&gt;nvmet_tcp_schedule_release_queue()
   kref_put(&amp;amp;queue-&amp;gt;kref, nvmet_tcp_release_queue)
     nvmet_tcp_release_queue()
       queue_work(nvmet_wq, &amp;amp;queue-&amp;gt;release_work) &amp;lt;--- nvmet_wq
         process_one_work()
           nvmet_tcp_release_queue_work()
             nvmet_cq_put(&amp;amp;queue-&amp;gt;nvme_cq)
               nvmet_cq_destroy()
                 nvmet_ctrl_put(cq-&amp;gt;ctrl)
                   nvmet_ctrl_free()
                     flush_work(&amp;amp;ctrl-&amp;gt;async_event_work) &amp;lt;--- nvmet_wq&lt;/p&gt;
&lt;p&gt;Previously Scheduled by :-
		        nvmet_add_async_event
		          queue_work(nvmet_wq, &amp;amp;ctrl-&amp;gt;async_event_work);&lt;/p&gt;
&lt;p&gt;This trips lockdep with a possible recursive locking warning.&lt;/p&gt;
&lt;p&gt;[ 5223.015876] run blktests nvme/003 at 2026-04-07 20:53:55
[ 5223.061801] loop0: detected capacity change from 0 to 2097152
[ 5223.072206] nvmet: adding nsid 1 to subsystem blktests-subsystem-1
[ 5223.088368] nvmet_tcp: enabling port 0 (127.0.0.1:4420)
[ 5223.126086] nvmet: Created discovery controller 1 for subsystem nqn.2014-08.org.nvmexpress.discovery for NQN nqn.2014-08.org.nvmexpress:uuid:0f01fb42-9f7f-4856-b0b3-51e60b8de349.
[ 5223.128453]…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2026-46304</guid>
    </item>
  </channel>
</rss>
