<?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>Tue, 29 Sep 2026 16:45:42 +0000</lastBuildDate>
    <item>
      <title>CVE-2026-90013 — tracing: Take trace_array reference when opening options file</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2026-90013</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;tracing: Take trace_array reference when opening options file&lt;/p&gt;
&lt;p&gt;The options files do not take the trace_array reference for the options
they represent. This could cause a use-after-free kernel crash if one of
these files is opened by one task and another task removes the instance
that the option is for. Because it doesn&amp;#39;t take a reference upon opening,
it will not stop the removal which will free the options descriptor that
is being used.&lt;/p&gt;
&lt;p&gt;As the options are somewhat dynamic in their creation at boot up, each
file represents a flag in the trace_array. The trace_array has an array of
indexes to represent each of these flags that is stored in the
trace_flags_index array. The address of the index array element is used to
pass to the inode-&amp;gt;i_private pointer. Then that element is read which
holds the index (which represents the flag) and then the index is used to
calculate the trace_array descriptor from its trace_flags_index array.&lt;/p&gt;
&lt;p&gt;One issue is that the index element can not be referenced until the
trace_array&amp;#39;s reference is taken. To handle this, create a new helper
function called: trace_array_options_get() that will iterate all the
existing trace_arrays in the ftrace_trace_arrays list (under the
trace_types_lock), and compare the passed in address of the index element
with the entire array of the trace_array&amp;#39;s trace_flags_index array.
If it matches, then up the corresponding trace_array&amp;#39;s reference and
retu…&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;tracing: Take trace_array reference when opening options file&lt;/p&gt;
&lt;p&gt;The options files do not take the trace_array reference for the options
they represent. This could cause a use-after-free kernel crash if one of
these files is opened by one task and another task removes the instance
that the option is for. Because it doesn&amp;#39;t take a reference upon opening,
it will not stop the removal which will free the options descriptor that
is being used.&lt;/p&gt;
&lt;p&gt;As the options are somewhat dynamic in their creation at boot up, each
file represents a flag in the trace_array. The trace_array has an array of
indexes to represent each of these flags that is stored in the
trace_flags_index array. The address of the index array element is used to
pass to the inode-&amp;gt;i_private pointer. Then that element is read which
holds the index (which represents the flag) and then the index is used to
calculate the trace_array descriptor from its trace_flags_index array.&lt;/p&gt;
&lt;p&gt;One issue is that the index element can not be referenced until the
trace_array&amp;#39;s reference is taken. To handle this, create a new helper
function called: trace_array_options_get() that will iterate all the
existing trace_arrays in the ftrace_trace_arrays list (under the
trace_types_lock), and compare the passed in address of the index element
with the entire array of the trace_array&amp;#39;s trace_flags_index array.
If it matches, then up the corresponding trace_array&amp;#39;s reference and
retu…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2026-90013</guid>
    </item>
  </channel>
</rss>
