<?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 18:39:34 +0000</lastBuildDate>
    <item>
      <title>CVE-2024-27014 — net/mlx5e: Prevent deadlock while disabling aRFS</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2024-27014</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;net/mlx5e: Prevent deadlock while disabling aRFS&lt;/p&gt;
&lt;p&gt;When disabling aRFS under the `priv-&amp;gt;state_lock`, any scheduled
aRFS works are canceled using the `cancel_work_sync` function,
which waits for the work to end if it has already started.
However, while waiting for the work handler, the handler will
try to acquire the `state_lock` which is already acquired.&lt;/p&gt;
&lt;p&gt;The worker acquires the lock to delete the rules if the state
is down, which is not the worker&amp;#39;s responsibility since
disabling aRFS deletes the rules.&lt;/p&gt;
&lt;p&gt;Add an aRFS state variable, which indicates whether the aRFS is
enabled and prevent adding rules when the aRFS is disabled.&lt;/p&gt;
&lt;p&gt;Kernel log:&lt;/p&gt;
&lt;p&gt;======================================================
WARNING: possible circular locking dependency detected
6.7.0-rc4_net_next_mlx5_5483eb2 #1 Tainted: G          I
------------------------------------------------------
ethtool/386089 is trying to acquire lock:
ffff88810f21ce68 ((work_completion)(&amp;amp;rule-&amp;gt;arfs_work)){+.+.}-{0:0}, at: __flush_work+0x74/0x4e0&lt;/p&gt;
&lt;p&gt;but task is already holding lock:
ffff8884a1808cc0 (&amp;amp;priv-&amp;gt;state_lock){+.+.}-{3:3}, at: mlx5e_ethtool_set_channels+0x53/0x200 [mlx5_core]&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 (&amp;amp;priv-&amp;gt;state_lock){+.+.}-{3:3}:
       __mutex_lock+0x80/0xc90
       arfs_handle_work+0x4b/0x3b0 [mlx5_core]
       process_one_work+0x1dc/0x4a0
       worker_thread+0x1bf/0x…&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;net/mlx5e: Prevent deadlock while disabling aRFS&lt;/p&gt;
&lt;p&gt;When disabling aRFS under the `priv-&amp;gt;state_lock`, any scheduled
aRFS works are canceled using the `cancel_work_sync` function,
which waits for the work to end if it has already started.
However, while waiting for the work handler, the handler will
try to acquire the `state_lock` which is already acquired.&lt;/p&gt;
&lt;p&gt;The worker acquires the lock to delete the rules if the state
is down, which is not the worker&amp;#39;s responsibility since
disabling aRFS deletes the rules.&lt;/p&gt;
&lt;p&gt;Add an aRFS state variable, which indicates whether the aRFS is
enabled and prevent adding rules when the aRFS is disabled.&lt;/p&gt;
&lt;p&gt;Kernel log:&lt;/p&gt;
&lt;p&gt;======================================================
WARNING: possible circular locking dependency detected
6.7.0-rc4_net_next_mlx5_5483eb2 #1 Tainted: G          I
------------------------------------------------------
ethtool/386089 is trying to acquire lock:
ffff88810f21ce68 ((work_completion)(&amp;amp;rule-&amp;gt;arfs_work)){+.+.}-{0:0}, at: __flush_work+0x74/0x4e0&lt;/p&gt;
&lt;p&gt;but task is already holding lock:
ffff8884a1808cc0 (&amp;amp;priv-&amp;gt;state_lock){+.+.}-{3:3}, at: mlx5e_ethtool_set_channels+0x53/0x200 [mlx5_core]&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 (&amp;amp;priv-&amp;gt;state_lock){+.+.}-{3:3}:
       __mutex_lock+0x80/0xc90
       arfs_handle_work+0x4b/0x3b0 [mlx5_core]
       process_one_work+0x1dc/0x4a0
       worker_thread+0x1bf/0x…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2024-27014</guid>
    </item>
  </channel>
</rss>
